ASP.Net MVC应该为每个视图创建一个模型吗?

时间:2011-02-22 11:17:46

标签: asp.net-mvc

我是ASP.Net MVC的新手,我发现自己为每个视图制作了一个模型类。例如。 SignInModel,SignUpModel,EditProfileModel等等。

其中许多都有些相似,具有相同的DB fiels,然后是一些自定义属性。

这真的是MVC应该如何完成,还是我错过了它的某些方面?

我意识到这可能是主观的,但应该有一个“最佳实践”。

1 个答案:

答案 0 :(得分:15)

  

这真的是MVC应该如何完成,还是我错过了它的某些方面?

这绝对是MVC应该如何完成的,你不会错过它的任何方面。

每个视图的视图模型。

您仍然可以拥有基本视图模型类并使用视图模型的继承,但要特别注意不同视图之间可能不同的验证规则。因此,例如,如果在一个视图上需要一个属性,则在另一个视图上可能不再需要该属性,因此如果您使用了基本视图模型类和数据注释,那么您将非常敬酒。

即使您重复某些属性,也不要犹豫不决创建视图模型。这就是视图模型的意思=>响应视图的特定需求并牢记这些需求可能会经常发生变化,因此在开始时使用单独的视图模型可能看起来很困难,但从长远来看,它是维护和良好实践方面的最佳解决方案恕我直言