MVC URL使用自定义字段重写

时间:2016-04-17 15:57:03

标签: asp.net-mvc

我有一个名为ProductModel的模型和名为ProductController的控制器的MVC 5项目。 我还有一个产品数据行,其字段标题为:佳能DSLR相机 默认情况下,当用户想要查看详细信息产品时,他们会看到网址http://../Product/Details/1

我们可以将网址更改为:http://../Product/Canon-DSLR-Cameras吗?

感谢。

1 个答案:

答案 0 :(得分:1)

在你的RouteConfig.cs

您可以简单地添加路线图,如:

routes.MapRoute("Details", "Product/{customUrl}",
       new { controller = "Product", action = "Details" },
       new { customUrl = @"\S+" } );

编写一个控制器动作(ProductController.cs):

public ActionResult Details(string customUrl)
{
   // find ProductModel by customUrl
   ...
   return View(); // pass the model matching customUrl
}