加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

模型 – 视图 – 控制器 – MVC控制器索引有时404?

发布时间:2020-12-16 03:24:53 所属栏目:asp.Net 来源:网络整理
导读:我添加了3个控制器,对于其中一个控制器,默认情况下索引视图不起作用. Works(shows index):http://localhost:1767/Employees/ http://localhost:1767/Employees/Indexhttp://localhost:1767/Home/ http://localhost:1767/Home/Indexhttp://localhost:1767/htt
我添加了3个控制器,对于其中一个控制器,默认情况下索引视图不起作用.

Works(shows index):
http://localhost:1767/Employees/  
http://localhost:1767/Employees/Index
http://localhost:1767/Home/       
http://localhost:1767/Home/Index
http://localhost:1767/
http://localhost:1767/Companies/Index

Doesn't work(gives 404 error):
http://localhost:1767/Companies/

1)我创建了一个实体框架类库,它是从包含Employees和Companies表的数据库生成的.

2)创建了一个MVC 3空项目.

3)从MVC项目向EF类库项目添加了项目引用.

4)添加了一个控制器,在添加控制器对话框中,我选择了EF模型和其中一个表,并命名为控制器CompaniesController

5)然后我记得我需要一个HomeController,所以我添加了另一个控制器,命名为HomeController,并再次选择了公司实体.

6)最后,我添加了一个EmployeesController,选择了Employees实体.

这是我的Global.asax.cs中唯一的路线:

routes.MapRoute(
          "Default",// Route name
          "{controller}/{action}/{id}",// URL with parameters
          new { controller = "Home",action = "Index",id = UrlParameter.Optional } // Parameter defaults

为什么http://localhost:1767/Companies/ URL不像所有其他控制器一样默认为索引操作?我做了一些练习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: /Companies/

编辑:所以我通常不会在网上发布示例时透露我的实体名称或域名详细信息,但在这种情况下,公司实际上称为属性,并且将名称更改为属性2以查看视图文件夹和控制器修复了问题.因此,似乎属性是一个特殊的关键字,如果它出现在URL中,则会将默认值分解为索引

解决方法

将视图文件夹和控制器从属性(控制器)更改为Properties2(控制器),现在工作正常.显然,“属性”在URL中有一些特殊处理,并将默认值打破为索引

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读