【问题标题】:The proper way to use Attribute Routing in MVC5在 MVC5 中使用属性路由的正确方法
【发布时间】:2019-10-06 17:06:07
【问题描述】:

我正在开发一个 MVC5 项目并尝试使用属性路由进行组织,但它不起作用,我收到一条消息说"the resource can't be found"

我的控制器中的代码是:

  [Route("FrontEnd/IndexPage/Index")]
    public ActionResult Index()
    {
        return View();
    }

Views文件夹下的子文件夹如下:

  • 前端
  • 索引页
  • Index.cshtml

您能告诉我正确的路由方法吗?

【问题讨论】:

    标签: asp.net-mvc routing


    【解决方案1】:

    视图应该位于

    Views\{controller}\{action}.cshtml
    

    尽管有任何路由属性。在您的情况下,文件夹 FrontEndIndexPage 是多余的,结果应该如下

    Views\{controller}\Index.cshtml
    

    【讨论】:

    • 感谢您的回复,但是这两个文件夹是多余的吗?我在 FrontEnd 文件夹中创建了 IndexPage 文件夹,并且在 IndexPage 中有一个 Index.cshtml,这是我想要访问的视图。跨度>
    • @MOHAMMADALMASALMA 我的意思是你当前的文件夹结构是错误的,它应该像答案中的一个
    【解决方案2】:

    打开位于 App_Start 文件夹中的 RouteConfig 文件检查基于属性的路由是否已启用,如果没有则添加,

    routes.MapMvcAttributeRoutes();

    在 routes.MapRoute 上面的方法

    参考此链接: Attribute routing in asp.net mvc-5

    【讨论】:

    • 感谢您的回复,我已经收录了,但是我没有工作。
    猜你喜欢
    • 2023-04-10
    • 2016-01-12
    • 1970-01-01
    • 1970-01-01
    • 2014-12-27
    • 2016-01-06
    • 2014-04-15
    • 2016-05-23
    • 1970-01-01
    相关资源
    最近更新 更多