正确使用控制器和视图

时间:2014-01-28 11:40:57

标签: c# asp.net-mvc model-view-controller

假设有一个网页,我们想要显示电影列表,注册电影和编辑这些电影。

您可以创建一个控制器,并在控制器内处理三个视图(索引,创建,编辑)。

或者您可以创建两个控制器,一个用于处理索引,另一个用于处理创建和编辑。 (自创建和编辑模型或ViewModel共享)

或者您可以创建三个控制器,每个视图一个。

可以通过三种方式完成。 但哪一个是正确的,为什么?

4 个答案:

答案 0 :(得分:2)

你想为此创建一个控制器,例如MoviesController。然后控制器内的操作才有意义,因为URL看起来像这样......

Movies/Create

Movies/Edit

Movies //this will just list the movies.

然后可以传递一个Movies repository控制器来操纵或列出数据。

显然,您可以创建三个控制器,但这样做会过度,导致维护问题。

答案 1 :(得分:1)

因为您的商业模式是一种,我认为您必须使用一个控制器以及您所需的操作和视图。

答案 2 :(得分:0)

您应该创建一个包含三个操作和视图的控制器(索引,创建,编辑)。

答案 3 :(得分:0)

控制器应按逻辑方式围绕对象\功能进行分组。如果所有这三个动作都与电影有关,那么它应该是具有三个动作\视图的MovieController。

为每个动作创建新的控制器将使您的代码变得混乱。