查看help ASP.NET MVC 5中的属性路由,很容易看到如何约束参数,如下所示:
[Route("edit/{promoId:int?}")]
public ActionResult Edit(int? promoId) { … } 因此,此路由将只接受带有int值或空的promoId。
该路由的一些有效URL为:
/promotions/edit/5
/promotions/edit/但是如何将RouteAttribute设置为接受“/促销/编辑/启动to =5”呢?
发布于 2018-03-28 01:19:29
通过将该类型的URL指向您的操作,您可以在RouteConfig.cs文件夹中设置它。
routes.MapRoute(
name: "Edit",
url: "{controller}/{action}/promoId={promoId}",
defaults: new { controller = "Promotions", action = "Edit", promoId = UrlParameter.Optional }
);发布于 2018-03-27 23:26:12
实际上,我认为网址应该是这样的:
/promotions/edit?promoId=5
注意?。这是查询字符串标记的开始。
这样做是有可能的:
[Route("edit")]
public ActionResult Edit([FromUri]int promoId)
{
...
}https://stackoverflow.com/questions/49523867
复制相似问题