无法找到MVC asp.net资源

时间:2017-07-31 06:21:36

标签: asp.net-mvc

我是asp.net MVC的新手。我添加了一个控制器并查看和设置路由以查看我的索引页面。但它给了我以下错误。

                 The resource cannot be found.
                 Description: HTTP 404. The resource you are looking for (or 
                 one of its dependencies) could have been removed, had its 
                 name changed, or is temporarily unavailable.  Please review 
                 the following URL and make sure that it is spelled 
                 correctly. 

         Requested URL: /

1 个答案:

答案 0 :(得分:2)

从你的评论中我认为,你误解了MVC的基础知识是如何运作的。 (你可以在这里阅读:https://www.asp.net/mvc

默认情况下,MVC有很多约定,因此它知道路由如何映射到控制器等。当您向url发出请求时,MvcHandler的默认实现从默认的ControllerFactory实现接收控制器实例,该实现具有约定,控制器必须以名称Controller结束。这意味着,示例中的/Home1Controller/允许控制器工厂查找名为Home1ControllerController的控制器类,这很可能不存在。

为了完整性,以下是默认控制器工厂识别正确控制器的标准:

  • 班级范围必须是公开的
  • 类不能是抽象的
  • 类不得采用通用参数
  • 类名必须以“Controller”
  • 结尾
  • 类必须实现IController接口。

因此,如果保留默认路由,并且已创建名为Home1Controller的控制器,则可以访问Index方法的路由为:/Home1/Index

如果您的控制器名为FooController,则网址为/Foo/