我有两个MVC模型
public class Model1
{
[Required]
public int Id {get;set;}
[Required]
public string Name {get;set;}
}
public class Model2
{
public Model1 ValidateThis {get;set;}
public Model1 DoNotValidateThis {get;set;}
}
在回发中,我填写了两个属性ValidateThis和DoNotValidateThis。我要验证仅发生在ValidateThis属性上。
经过更多的研究,我选择了下一个对我来说很好的解决方案。在控制器中,我放入下一个代码进行验证。
var results = new List<ValidationResult>();
bool isValid = Validator.TryValidateObject(
model2obj.ValidateThis,
new ValidationContext(model2obj.ValidateThis, null, null), results,true);
ModelState.Clear();
foreach (ValidationResult validationResult in results)
{
ModelState.AddModelError("ValidateThis." + validationResult.MemberNames.First(), validationResult.ErrorMessage);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句