繁体   English   中英

可能有连字符的 ASP.NET MVC 路由参数

[英]ASP.NET MVC route parameter that may have hyphens

我们有一个工作控制器,如下所示。 name参数可以是“Widget”、“A09912”或“W-0-090-B”之类的东西。 当参数中有连字符时路由失败。

[HttpGet]
[Route( @"Product/{name:alpha}" )]
public ActionResult Index( string name )
{
    IList<Product> list = Repository.GetByName( name );
    return View( list );
}

有没有办法配置东西,以便带连字符的参数可以工作?

是的,有一种方法可以配置事物,以便带连字符的参数起作用。

删除alpha约束:

{x:alpha} 匹配大写或小写拉丁字母字符 (az, AZ)

通过包含带连字符的参数,它与您当前使用的约束不匹配。

看看 ASP.NET Web API 2 中的属性路由中的路由约束

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM