MVC4多控制器

时间:2013-09-25 14:23:14

标签: c# asp.net asp.net-mvc asp.net-mvc-4

这是一个非常基本的问题,但我找不到任何明确,简单,直接的答案。

我有一个带有1个HomeController.cs文件的基本MVC4应用程序。我想创建第二个Controller.cs文件以放入更多代码,因此HomeController不会变成意大利面条代码。

所以显然第1步是添加一个新的控制器。我假设下一步是向RouteConfig.cs添加一些东西。

我需要添加什么来使用RouteConfig.cs来使用新的Controller.cs?

4 个答案:

答案 0 :(得分:5)

您不需要添加任何内容。 HomeController需要将RouteConfig中的一行代码设置为默认控制器(当用户导航到站点根目录时),但是应该可以使用默认路由访问任何其他控制器。

只需创建一个控制器,添加一些操作,您就应该能够使用格式Controller/Action或使用路由帮助程序函数进行路由。

答案 1 :(得分:3)

您的路线文件是什么样的?

通常,有一条默认路线:

routes.MapRoute("default",
    "{controller}/{action}/{id}",
    new { controller = "Home", action="Index" }
);

这意味着只要添加带有Controller后缀的新控制器,MVC就会确保路由引擎看到您的控制器,并且只要您的URL遵循上述结构,就会以该格式发出请求将被路由到适当的控制器。

答案 2 :(得分:0)

我们通常将其发送到提交到不同控制器的不同视图,或者如果您只想在当前的家庭控制器中调用某些方法,则在当前控制器中添加引用。

答案 3 :(得分:0)

创建新控制器后,您真正需要的是添加新操作(如果未自动添加),然后为新操作添加新视图。 仅当您要处理某些与默认设置不匹配的特定参数时,才需要触摸路线