如何在我的视图中检查模型中的单个属性是否存在验证错误?
我意识到我可以做到这一点,但它没有强类型,所以我担心它容易出错:
@if (ViewData.ModelState["MyProperty"].Errors.Count() > 0)
{
// Show validation error
}
答案 0 :(得分:1)
您可以使用以下内容:
public static bool IsValidFor<TModel, TProperty>(this TModel model,
System.Linq.Expressions.Expression<Func<TModel, TProperty>> expression,
ModelStateDictionary modelState)
{
string name = ExpressionHelper.GetExpressionText(expression);
return modelState.IsValidField(name);
}
用法:
if (!model.IsValidFor(x => x.MyProperty, ModelState))
{
// Show validation error
}
礼貌:这answer