C# 验证MVC5中的可选必填字段
我有一个模型AddSpecificitiesViewModel,具有以下值:C# 验证MVC5中的可选必填字段,c#,validation,asp.net-mvc-5,C#,Validation,Asp.net Mvc 5,我有一个模型AddSpecificitiesViewModel,具有以下值: public class AddSpecificitiesViewModel { public bool? Elevator { get; set; } public string ElevatorCapacity { get; set; } } 另一个模型clientViewModel: public class clientViewModel { public AddSpeci
public class AddSpecificitiesViewModel
{
public bool? Elevator { get; set; }
public string ElevatorCapacity { get; set; }
}
另一个模型clientViewModel:
public class clientViewModel
{
public AddSpecificitiesViewModel add {get; set;}
}
AddSpecificitiesViewModel的属性电梯和电梯容量都是必需的,但只有电梯设置为true时,电梯容量才会填充。
如何验证这种类型的模型
例如,如果I电梯为真,且我未在表格中填写电梯容量,如何在控制器中验证模型
public ActionResult Client(ClientViewModel clientViewModel)
{
if (ModelState.IsValid){
//action
} else {
//action
}
return View("Index", clientViewModel);
}
听起来最好有一个
电梯
课程,必须有一定的载客量。然后,AddSpecificitiesViewModel
中的电梯
属性可以是可选的(因此为null或对电梯
实例的引用)。我认为这比拥有“共同强制”属性要好。使用条件验证属性-例如a[RequiredIf]
(或者您可以使用。如果您想学习编写自己的,请参阅我还没有阅读全部内容,但是该属性的名称,为什么您的布尔属性名为lifter
,为什么容量string
?@StephenMuecke:我可以将其用于MVC5吗?@SeM:Client requirements