请教一个MVC5.0 关于路由的问题

回头是岸 2016-06-20 06:10:01
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

// 自定义路由
routes.MapMvcAttributeRoutes();

AreaRegistration.RegisterAllAreas();

// 默认路由 模糊匹配
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Account", action = "Login", id = UrlParameter.Optional }
);


站点启动无法定位到登录页,而是提示无法找到资源
注释掉 routes.MapMvcAttributeRoutes(); 自定义路由 则正常
按照匹配规则,不应该找不到资源,难道这两种不能共存,求解????

大家可以自己搭建Demo 来测试我说的
...全文
119 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 版主 2016-06-21
  • 打赏
  • 举报
回复
你的自定义路由呢?
回头是岸 2016-06-21
  • 打赏
  • 举报
回复
引用 1 楼 FoxDave 的回复:
http://www.cnblogs.com/OpenCoder/p/5013236.html
感谢你的回复,看了这篇新特性介绍, 文章最后提到的 路由匹配优先级 也说了 是可以共存的,那么现实是有问题的 你可以自己弄的Demo试一下
Justin-Liu 2016-06-21
  • 打赏
  • 举报
回复
http://www.cnblogs.com/OpenCoder/p/5013236.html
Tullamarine 2016-06-21
  • 打赏
  • 举报
回复
试过了. 两者能够共存的意思是, 你可以同时设置两个路由模式, 两个模式可以同时工作; 但对一个Action,一但你指定了RouteAttribute,就只能通过 attribute route来访问; 传统的路由模式是找不到该action的. 所以会得到404

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧