我MVC3應用具有以下網址:http://mysite.com/controller/details?id=56
搜索引擎友好的URL路由
我要讓搜索引擎友好像
http://mysite.com/controller/title-of-the-entity-56
我怎樣才能實現呢?
我MVC3應用具有以下網址:http://mysite.com/controller/details?id=56
搜索引擎友好的URL路由
我要讓搜索引擎友好像
http://mysite.com/controller/title-of-the-entity-56
我怎樣才能實現呢?
您需要設置新路線,但我強烈建議您重新考慮自己解析實體的ID。我的意思是:
有了這個URL,ID可以被傳遞到操作爲數字數據類型(INT爲例):http://mysite.com/controller/details?id=56
有了這個URL,該ID只能作爲傳遞字符串的一部分:http://mysite.com/controller/title-of-the-entity-56
..這意味着你必須解析字符串,提取數字並將其轉換。
最好瞄準這種格式:http://mysite.com/controller/details/id/title-of-entity,有點StackOverflow如何做到這一點。
嘗試增加這條路線,你的默認路由上面,在Global.asax.cs中:
routes.MapRoute(
"DetailsRoute",
"details/{id}/{entityTitle}",
new { controller = "details", action = "Index", id = UrlParameter.Optional }
);
然後你就可以有這樣的作爲在細節上控制你的索引操作:
public ActionResult Index(int id, string entityTitle) {
}
感謝西蒙懷特黑德正是我所期待的。
下面的文章描述了詳細
http://www.deliveron.com/blog/post/SEO-Friendly-Routes-with-ASPnet-MVC.aspx
您可以創建的Global.asax.cs文件的自定義路線。 – 2012-07-24 22:16:56