asp.net-mvc – 具有不同参数名称的Asp.Net路由
我正在尝试映射某些路由,以便自动生成的Urls看起来像
这两个代码块的Admin / controller / action / param, @ Url.Action(“action”,“controller”,new {id =“param”})和 @ Url.Action( “行动”,“控制器”,新的{类型= “参数”}) 我所做的是在区域注册中的以下内容, context.MapRoute( "Admin_default","Admin/{controller}/{action}/{id}",new { action = "Index",id = UrlParameter.Optional },new string[] { "namespaces" }); context.MapRoute( "Admin_type","Admin/{controller}/{action}/{type}",type = UrlParameter.Optional },new string[] { "namespaces" }); 当参数名称为id时,生成的url是预期的,但是当参数名称是type,而不是controller / action / typevalue时,它会生成类似controller / action /?type = typevalue的内容 有没有办法生成像控制器/动作/类型值的url保持Admin_default路由的生成器行为完整? 解决方法
发生这种情况是因为第一条路线用于映射网址(ID是可选的). 您可以尝试为路线添加一些约束.我猜你的id参数是一个整数,type参数是一个字符串.在这种情况下,您可以尝试使用此路线: context.MapRoute( "Admin_default",new { id = @"d+" },new string[] { "namespaces" }); context.MapRoute( "Admin_type",new string[] { "namespaces" }); 您可以找到有关路线约束here的更多信息. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – Microsoft Report Viewer 2010部署
- 验证 – 关于构建asp.net mvc应用程序的建议
- asp.net-mvc – Fluent Validation不会在第一次验证整个表单
- asp.net-web-api – 间歇性“无法加载类型”System.Net.Htt
- 在ASP.NET C中将byte []流式传输到Image
- asp.net-mvc-3 – 实体框架|代码优先|从CultureInfo.Name映
- asp.net – C#Web API模型绑定提供程序应如何工作?
- asp.net – SqlDataSource在变量后面插入代码
- asp.net-mvc – @ Html.DisplayNameFor的详细信息模型
- 创建可扩展的ASP.Net MVC网站,而无需使用Session
- asp.net-web-api – ASP.NET核心WebAPI 404错误
- asp.net – Mono有什么不适合的东西?
- asp.net-mvc-3 – asp.net mvc 3 razor从IEnumer
- asp.net-mvc-4 – 具有自定义角色的MVC 4 Intran
- asp.net-mvc – 如何使用ASP.NET MVC 2验证复杂模
- asp.net – 带超时异常的reCaptcha验证
- ASP.NET Web API中除IQueryable之外的OData查询和
- 使用Azure ACS时无法从Active Directory注销
- asp.net-mvc-5 – MVC5:我在哪里可以获得System
- asp.net-mvc-3 – ASP.NET MVC:如何返回304“未