mvc url重定向-'/'应用程序中的服务器错误

时间:2018-12-02 16:38:56

标签: c# asp.net-mvc url redirect mapping

我正在阅读本书中的练习(只是开始学习MVC)。我对 RouteConfig.cs 文件进行了以下更改:

routes.MapRoute("Contact", "Contact/{*pathinfo}", new { 
controller = "Home", action = "Contact" });

routes.MapRoute("About", "About/{*pathinfo}", new { controller = 
"About", action = "About" });

联系页面工作正常,但是“关于”只是在尝试通过http://localhost:49899/About访问时抛出错误。

  

错误:“ /”应用程序中的服务器错误。无法找到该资源。   说明:HTTP404。您要查找的资源(或其资源之一)   依赖项)可能已被删除,名称更改或   暂时不可用。请查看以下网址并进行   确保拼写正确。要求的网址:/关于

我看不到代码的这两行之间的任何区别,有人可以指出我所缺少的内容吗?这是一个全新的项目,具有所有默认设置和脚手架。

1 个答案:

答案 0 :(得分:0)

创建默认项目时,各种向导会在后台为您发生。默认项目很可能带有自动生成的HomeController,它是一个自动生成的Home文件夹,其中包含Home Controller将调用的视图以及一些与那些View相对应的Action。

您可能没有名为About的Controller。您为About定义的路由是说,要进入About页面,您将通过About控制器并调用About Action。您最有可能需要点击Home Controller,然后点击About Action。

P.S。 MVC使用命名约定来推断事物的位置。您可能会在名为Home的视图文件夹中找到About视图。您在这里看到图案吗? Routing docs