【问题标题】:MVC Attribute Routes & Route InheritanceMVC 属性路由和路由继承
【发布时间】:2014-05-02 14:53:02
【问题描述】:

我正在尝试在 MVC5 中获取属性路由,以让我从基本控制器继承路由。示例:

public abstract class BaseController: Controller
{
    [Route("")]
    public virtual ActionResult Index()

    [Route("edit/{id}")]
    public virtual ActionResult Edit(TKey id)

    //etc
}

[RoutePrefix("people")]
public class PersonController : BaseController
{
    //etc
}

那么显然我应该将/people 用于索引页面,/people/edit/1 用于编辑页面等。但是,这似乎不受支持,或者我只是不知道我在做什么。有没有办法让它按照我想要的方式工作?

【问题讨论】:

  • 路由属性不能被继承。见:stackoverflow.com/questions/19989023/…
  • +1 链接。谢谢,@esmoore68。厄运;让我们希望他们在未来的版本中允许这种情况。
  • @esmoore68,添加您的评论作为答案,我会将其标记为正确答案

标签: asp.net-mvc routes asp.net-mvc-5


【解决方案1】:

据此:.NET WebAPI Attribute Routing and inheritance,路由属性不能被继承。显然,MVC 5.2 将支持通过 IDirectRouteProvider 执行此操作。

【讨论】:

    猜你喜欢
    • 2013-11-28
    • 2019-02-19
    • 2016-11-05
    • 2014-06-14
    • 1970-01-01
    • 2014-11-27
    • 2014-09-17
    • 2016-11-01
    • 2013-10-28
    相关资源
    最近更新 更多