我必须为一个已经存在的网站做虚荣心网址。所需经费如下:
到目前为止,我已经尝试了各种路由解决方案,允许我拥有domain.com/vanity,这是不错的,但营销人员不喜欢,因为公司内部的不同部门。我尝试过路由,它将覆盖现有的操作,并将它们都视为虚荣心(也不可行)。我已经有了一个解决方案,以编程方式处理所请求的url,并将其重定向到一个实际存在的页面,但这在任何方面都是不可伸缩的。
到目前为止,我知道虚荣心部分可以作为操作的一个参数来处理,这样我就可以在路由(Index)中触发默认页面,但到目前为止,这并不能保留结构。
博士:我需要一个允许域/控制器/虚荣心结构的解决方案,同时也允许域/控制器/动作。
发布于 2014-06-11 15:12:57
使用AttributeRouting for MVC4,您可以完成一个工作解决方案,直到您提升替换项目。它将允许您保留现有的路线,同时添加新的,定制的影响很小。
[Route("my-vanity/is-cool/post/{id}")]
public ActionResult Index(int id)
{
}重要的是要记住优先级,这样您就可以编写没有覆盖/被现有路由覆盖的路由。您可以在某种程度上使用属性上的属性来指导这一点。下面只是一个例子,将添加的路线放在最后的优先对整个网站。
[Route("my-vanity/is-cool", SitePrecedence = -1)]
public ActionResult Index()
{
}发布于 2014-06-11 15:01:34
ASP.NET WebApi2内置了对属性路由的支持。使用它,您可以以任何方式定义URL(而不是遵循/controller/action模式)。
http://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2
https://stackoverflow.com/questions/24141157
复制相似问题