一尘不染

如何在ASP.NET MVC中收集模型状态错误?

html

如何在视图中收集错误?

我不想使用HTML
Helper验证摘要或验证消息。相反,我想检查是否有错误,是否有错误以特定格式显示。另外,在输入控件上,我想检查特定的属性错误并将类添加到输入中。

PS我正在使用Spark View Engine,但想法应该是相同的。

所以我想我可以做…

<if condition="${ModelState.Errors.Count > 0}">
  DispalyErrorSummary()
</if>

....and also...

<input type="text" value="${Model.Name}" 
       class="?{ModelState.Errors["Name"] != string.empty} error" />

....

或类似的东西。

更新

我的最终解决方案如下所示:

<input type="text" value="${ViewData.Model.Name}" 
       class="text error?{!ViewData.ModelState.IsValid && 
                           ViewData.ModelState["Name"].Errors.Count() > 0}" 
       id="Name" name="Name" />

如果此属性有错误,则仅添加错误CSS类。


阅读 215

收藏
2020-05-10

共1个答案

一尘不染

<% ViewData.ModelState.IsValid %>

要么

<% ViewData.ModelState.Values.Any(x => x.Errors.Count >= 1) %>

对于特定的财产…

<% ViewData.ModelState["Property"].Errors %> // Note this returns a collection
2020-05-10