Hit*_*iya 11 asp.net url-rewriting asp.net-mvc-routing asp.net-mvc-3
我想为我的ASP.NET MVC网站实现一个SEO友好的URL.
目前我的网址如下:
http://www.domain.com/product?id=productid
但现在我想重写我的网址:
http://www.domain.com/productname
所以,任何人都可以帮我上面......
Nar*_*iya 11
请尝试以下解决方案.在global.asax.cs
routes.MapRoute(
"Product",
"{productName}",
new { controller = "Product", action = "Index" },
new { productName = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
但你要保持唯一性需要在productName
与产品控制器(即指数在行动产品控制器通过取记录:
public ActionResult index(string productName)
{
//do something regarding get product by productname
}
Run Code Online (Sandbox Code Playgroud)
您可以以这种方式将路由添加到MVC路由引擎 -
在 Global.asax.cs
routes.MapRoute(
"Product",
"{controller}/{productId}/{productName}",
new { controller = "Product", action = "Index" },
new { productId = UrlParameter.Optional , productName = UrlParameter.Optional }
);
Run Code Online (Sandbox Code Playgroud)
这将允许您使用URL
www.domain.com/productid/productname
Run Code Online (Sandbox Code Playgroud)
您可能会或可能无法实现的原因
www.domain.com/productname
Run Code Online (Sandbox Code Playgroud)
productname不是标识符,不能用于唯一地查找记录.您需要在网址中使用标识符.
Ex - 在SO中查看此问题的URL,它有ID,然后附加SEO友好测试.
归档时间: |
|
查看次数: |
14979 次 |
最近记录: |