asp.net-mvc – MVC路由错误:约束条目’长度’
发布时间:2020-05-24 13:08:16 所属栏目:asp.Net 来源:互联网
导读:我有一个名为Account的控制器,其操作具有以下签名: public ActionResult Verify(string userName, Guid authorisationToken); 我创建了一个链接来调用此操作: /Account/Verify/sachin13/409bdaaa-0b65-4bb8-8695-6e430323d8f8 当我转到此链接时,我收到以下
|
我有一个名为Account的控制器,其操作具有以下签名: public ActionResult Verify(string userName,Guid authorisationToken); 我创建了一个链接来调用此操作: /Account/Verify/sachin13/409bdaaa-0b65-4bb8-8695-6e430323d8f8 当我转到此链接时,我收到以下错误: The constraint entry 'Length' on the route with URL 'Account/{Verify}/{userName}/{authorisationToken}' must have a string value or be of a type which implements IRouteConstraint.
这是我的RegisterRoutes方法在Global.asax中的样子: public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default",// Route name
"{controller}/{action}/{id}",// URL with parameters
new { controller = "Home",action = "Index",id = UrlParameter.Optional },// Parameter defaults
new[] { "UI.Controllers" }
);
routes.MapRoute(
"AccountVerify","Account/{Verify}/{userName}/{authorisationToken}",new { controller = "Account",action = "Verify",userName = "",authorisationToken = "" },"UI.Controllers"
);
}
两个问题: >我做了一些与众不同的事情,还是我的方法符合标准做法? 谢谢, 萨钦 解决方法你应该改变“UI.Controllers” 至 new [] {“UI.Controllers”} 在你的第二条路线. 如果你只指定一个字符串(不是一个数组),那么你得到错误的MapRoute函数重载 – 而不是MapRoute(RouteCollection,String,Object,String []),它接受一个命名空间列表作为你得到的最后一个参数MapRoute(RouteCollection,Object),它将约束作为最后一个参数.字符串“UI.Controllers”不是正确的约束规范=>你得到错误. 另外,@ Pankaj建议您的自定义路由应该在默认值之前,并且验证应该没有“{}”. 完整代码: public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"AccountVerify","Account/Verify/{userName}/{authorisationToken}",new [] { "UI.Controllers" }
);
routes.MapRoute(
"Default",// Route name
"{controller}/{action}/{id}",// URL with parameters
new { controller = "Home",// Parameter defaults
new[] { "UI.Controllers" }
);
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 在Controller或其他地方渲染部分字符串
- 将ASP.NET updatepanel与jQuery UI DatePicker结合使用时出
- asp.net-mvc – 从Asp.net MVC发送HTML电子邮件的最佳方式是
- asp.net-mvc-3 – ASP.NET MVC 3和Razor的ASHX处理程序
- asp.net-mvc – asp.net mvc区域的默认页面
- WPAD查询从ASP.NET调用webservice
- asp.net-mvc – 为什么在MVC中使用bundle会增加内存使用量
- Asp.net mvc dataannotation MaxLength验证不起作用
- 如何阻止MVC缓存调用动作方法的结果?
- asp.net-mvc – 使用自己的HtmlHelper扩展名用于模型绑定的
推荐文章
站长推荐
热点阅读
