我有一个大视图模型,我将其发送回控制器 - 使用 AJAX 帖子。该模型看起来像这样:
public class FunkyThingsOrder
{
[Required]
public int id{get;set;}
[Required]
public string CustomerName{get;set;}
[Required]
public string ContactNumber{get;set;}
[Required]
public string EmailAddress{get;set;}
public List<FunkyThing>{get;set;}
public List<Freebies>{get;set;}
}
public class FunkyThing
{
[Required]
public int id{get;set;}
[Required]
public string Name{get;set;]
[Required]
public int FunkienessLevel{get;set;}
[Required]
public int QuantityOrdered{get;set;}
}
现在想象我有一个控制器动作
ActionResult CreateOrUpdateFunkyThingsOrder(FunkyThingsOrder orderToCreateOrUpdate)
{
}
我想做的是假设客户姓名、联系电话和电子邮件地址是有效的——将它们保存到数据库中——不管这些时髦的东西是否有效。然后遍历 FunkyThings 列表并检查每个时髦事物的模型状态是否有效,如果有效 - 将其保存到数据库中。
我的问题是....有没有办法可以使用 ModelState.IsValid 来检查每个 FunkyThing 是否独立有效,或者我是否必须使用 IsValidField 遍历时髦事物中的每个字段?