如何在视图中获取错误集合?
我不想使用Html帮助程序验证摘要或验证消息。相反,我希望检查错误,如果有错误,则以特定格式显示它们。另外,在输入控件上,我希望检查特定的属性错误,并向输入添加一个类。
附言:我使用的是Spark View引擎,但想法应该是一样的。
所以我想我可以做一些像这样的事情。
<if condition="${ModelState.Errors.Count > 0}">
DisplayErrorSummary()
</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" />
这仅在此属性有错误时添加error css类。
发布于 2009-02-21 16:21:12
<% ViewData.ModelState.IsValid %>
或
<% ViewData.ModelState.Values.Any(x => x.Errors.Count >= 1) %>
对于特定的属性..。
<% ViewData.ModelState["Property"].Errors %> // Note this returns a collection
发布于 2010-08-11 22:46:03
要仅从ModelState获取错误,请使用此Linq:
var modelStateErrors = this.ModelState.Keys.SelectMany(key => this.ModelState[key].Errors);
发布于 2014-01-09 06:51:55
var modelStateErrors = this.ModelState.Values.SelectMany(m => m.Errors);
https://stackoverflow.com/questions/573302
复制相似问题