参数

时间:2016-09-27 19:58:07

标签: asp.net asp.net-mvc-4 routes

我正在创建一个MVC 4应用程序并使用路由映射来路由URL http://ModelSearch.com/Home/PartDetail/1000-1583-XIR/a

routes.MapRoute("PartDetail", "{controller}/{action}/{id}/{rev}", new { action = "PartDetail" });

可能有像“1000/1584”的身份证 http://ModelSearch.com/Home/PartDetail/1584分之1000 / B

如何从新的mapRoute处理它?通配符不适用于中间参数。

1 个答案:

答案 0 :(得分:1)

您可以重新排列参数,并在网址模式末尾使用Id的通配符网址段。

DataAccessException

[Route("Home/PartDetail/{rev}/{*id}")] public ActionResult PartDetail(string rev,string id) { return Content("rev:"+rev+",id:"+id); } 就像捕获任何东西一样。因此,请求网址的*id段将映射到"1000/1584"参数。