我不明白你的实际问题是什么
但我已经使用带有发送 ID 的 URL 路由,它对我来说工作正常
让我给你看我的代码
public static void UrlRouting(RouteCollection RC, string RoutName, string routeUrl, string Page)
{
RC.MapPageRoute(RoutName, routeUrl, Page);
}
使用这个函数在global.ascx中进行路由
protected void Application_Start(object sender, EventArgs e)
{
UrlRouting(RouteTable.Routes, "Showproduct", "product/{productID}", "~/products.aspx");
}
&然后获取product.aspx上productID的值
if (RouteData.Values["productID"] != null){
string productID= RouteData.Values["productID"].ToString();
//Use your query here and assign this product ID to Your column
}
如果您使用的是 html 锚标记,那么您应该使用 resolveUrl 函数,例如
<a href='<%# ResolveUrl("~/product/"+Eval("YourProductIDColumn")) %>'>ProductNam</a>
&如果你是从后面的代码重定向页面,那么就这样使用
Response.RedirectToRoute("Showproduct", new { productID = yourProductIDValue });
希望这会有所帮助:)