我已经通过asp.net webform中的url路由更正了我的网站的网址。 现在页面网址是: 例如产品; 网站。 COM /产品/ 101 / PC 显示的内容是pc的内容。 如果我把它改成了 网站。 COM /产品/ 101 /音响 显示的内容是pc的页面。 因为101是数据库中pc的id。 现在我想要如果pc在url中更改但仍然是101,自动重定向到id引用的页面。请帮助我
答案 0 :(得分:0)
我不明白你的实际问题是什么 但我使用URL路由与发送ID,它对我来说工作正常 让我告诉你我的代码
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 });
希望这会有所帮助:)