属性映射 MVC 5.



我目前正在参与一个新的MVC 5项目,该项目希望将域映射到MVC区域。

例如,以下站点应映射其区域:

www.sitea.com needs to map to area SiteA
www.siteB.com needs to map to area SiteB
www.siteC.com needs to map to area SiteC

有没有更简单的方法可以使用属性映射在 MVC 5 中执行此操作,或者是否仍然需要使用类似于 IRouteConstraint 接口的东西

提前感谢您的帮助。

问候

如果你的意思是属性路由,不幸的是不是。在 MVC 5 中引入属性路由的目的是将路由配置与控制器的操作放在一起,以简化有关 URI 和操作之间映射的推理。

属性路由的新功能仍然围绕类VirtualPathData,这限制您只能使用虚拟路径中的令牌。即使在 MVC 5 中,将主机名映射到区域也会超出声明性路由的边界,并且您必须在接近 Maarten Balliauw 的实现 MVC 域路由的解决方案中扩展基础结构 ASP.NET。

您当然可以尝试从RouteAttributeRouteAreaAttribute等继承,但恕我直言,您最终会实现与上述类似的实现。

最新更新