这是一个非常基本的问题,但我找不到任何清晰、简单、直接的答案。
我有一个带有 1 个 HomeController.cs 文件的基本 MVC4 应用程序。我想创建第二个 Controller.cs 文件来放入更多代码,这样 HomeController 就不会变成意大利面条代码。
所以显然第一步是添加一个新的控制器。我假设下一步是向 RouteConfig.cs 添加一些内容。
我需要添加什么到 RouteConfig.cs 才能使用新的 Controller.cs?
这是一个非常基本的问题,但我找不到任何清晰、简单、直接的答案。
我有一个带有 1 个 HomeController.cs 文件的基本 MVC4 应用程序。我想创建第二个 Controller.cs 文件来放入更多代码,这样 HomeController 就不会变成意大利面条代码。
所以显然第一步是添加一个新的控制器。我假设下一步是向 RouteConfig.cs 添加一些内容。
我需要添加什么到 RouteConfig.cs 才能使用新的 Controller.cs?
您不需要添加任何内容。HomeController 需要将 RouteConfig 中的一行代码设置为默认控制器(当用户导航到站点根目录时),但任何其他控制器都应该可以通过默认路由访问。
只需创建一个控制器,添加一些操作,您应该能够使用格式Controller/Action
或使用路由辅助函数路由到它。
你的路由文件是什么样的?
通常,有一个默认路由:
routes.MapRoute("default",
"{controller}/{action}/{id}",
new { controller = "Home", action="Index" }
);
这意味着只要您添加一个带有Controller
后缀的新控制器,MVC 就会确保路由引擎看到您的控制器,并且只要您的 URL 遵循上述结构,以该格式发出的请求就会被路由到相应的控制器。
我们通常将其发送到提交给不同控制器的不同视图,或者如果您只想在当前主控制器中调用某些方法,则在当前控制器中添加引用。
创建新控制器后,您真正需要的首先是添加一个新操作(如果它没有自动添加),然后为您的新操作添加一个新视图。只有当您要处理一些与您的默认设置不匹配的特定参数时,您才需要触摸您的路线