在Model或ViewModel上使用ViewModels和MVC(MVVM)时,验证应该在哪里? (或两者兼得或不兼任)?为什么?尤其是针对ASP.NET MVC V2即将推出。验证:Model或ViewModel
复杂/定制验证如何?
在Model或ViewModel上使用ViewModels和MVC(MVVM)时,验证应该在哪里? (或两者兼得或不兼任)?为什么?尤其是针对ASP.NET MVC V2即将推出。验证:Model或ViewModel
复杂/定制验证如何?
任何业务特定的验证应该在模型中。任何网站特定的验证都可以在Model和/或ViewModel中完成。这样您的业务逻辑(模型)可以移动到不同的界面(Windows,Web窗体等)后面,并且您的验证将保持不变。
模型。您的验证应该在您的业务层。您的视图模型应该只是为了获得您的视图设置。
我会说这是经常需要在各级:)
我想了一会儿约以下验证:
注:我包括所需的电子邮件到这两个2和3,因为它往往取决于它所属的地方。
如果电子邮件只起到信息的作用 - 然后验证可以轻松将其推到视图模型。如果电子邮件是应用程序的强大需求 - 这绝对是模型验证。
第四件事实际上与验证无关,因为我们了解它。
但它也应该应用。因此其结果应该显示给用户。
基本上所有4种类型的验证可以使用相同的基础设施。但实现取决于:)...
干杯,
德米特里。
mvvm tag? MVC的viewmodel不是MVVM模式的视图模型。 – 2010-08-16 00:05:47
MVVM很大程度上基于MVC模式,但是如果您对您的评论进行阐述(或许有一些链接),我将不胜感激。 – 2010-08-16 00:13:15