C# 如何验证ViewModel模型
我想在包含多个模型的ViewModel中使用ModelState.IsValidC# 如何验证ViewModel模型,c#,asp.net-mvc-4,razor,C#,Asp.net Mvc 4,Razor,我想在包含多个模型的ViewModel中使用ModelState.IsValid public class TestViewModel { public TestViewModel() { UserModel = new UserDTO(); PaymentModel = new PaymentDTO(); ResultModel = new ResultDTO(); NewUserModel = new NewUs
public class TestViewModel
{
public TestViewModel()
{
UserModel = new UserDTO();
PaymentModel = new PaymentDTO();
ResultModel = new ResultDTO();
NewUserModel = new NewUserDTO();
}
public UserDTO UserModel { get; set; }
public NewUserDTO NewUserModel { get; set; }
public PaymentDTO PaymentModel { get; set; }
public ResultDTO ResultModel { get; set; }
}
然后在我的行动中:
public ActionResult TestAction(TestViewModel model)
{
ModelState.IsValid //Just for UserDTO in some condition or just the NewUserDTO in other condition
}
在我的Payment.cshtml
视图中,如果是新用户,我将显示\u Register.cshtml
部分视图,该视图使用NewUserDTO
模型强键入,如果用户已经注册,我将使用UserDTO
模型呈现\u user.cshtml
部分视图。因此,当新用户提交表单时,我必须忽略UserModel
验证
是否可以执行此操作?从IValidTeableObject派生,并在TestViewModel中使用一些标志来打开/关闭验证