网址已更改,但内容不是

时间:2017-07-22 06:56:28

标签: asp.net url url-routing

我已经通过asp.net webform中的url路由更正了我的网站的网址。 现在页面网址是: 例如产品; 网站。 COM /产品/ 101 / PC 显示的内容是pc的内容。 如果我把它改成了 网站。 COM /产品/ 101 /音响 显示的内容是pc的页面。 因为101是数据库中pc的id。 现在我想要如果pc在url中更改但仍然是101,自动重定向到id引用的页面。请帮助我

1 个答案:

答案 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 });

希望这会有所帮助:)