我正在使用FluentValidation来验证我的模型,它工作的很棒。ASP.NET MVC查看消息
我有一个问题,虽然是你如何处理消息不附加到属性?
示例:客户登录视图。当登录无效时,我想显示一条简单的消息。
我所做的是将一个属性添加到模型Message
,然后在该视图上为该属性创建验证消息。
它的工作原理,但看着别人在做什么。
更新
所以为了简单起见,考虑以下几点:
视图模型
'Uses a FluentValidation Validator
Public Class LogonViewModel
Public Property UserName AS String<br>
Public Property Password AS String
End Class
查看
<div id="GenericMessage">--Generic Messages Go Here--</div>
@<table border="0" cellpadding="2" cellspacing="0">
<tr>
<td>User Name:</td>
<td>@Html.EditorFor(Function(x) x.UserName) @Html.ValidationMessageFor(Function(x) x.UserName)</td>
</tr>
<tr>
<td>Password:</td>
<td>@Html.EditorFor(Function(x) x.Password) @Html.ValidationMessageFor(Function(x) x.Password)</td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Logon" /></td>
</tr>
</table>
我想要做的是我可以显示消息的通用消息div
,如“无效登录”。我的问题是我在哪里把它放在模型中?我是否创建一个属性,然后将其设置在控制器ModelState
?或者我应该使用ViewData
?
我正在使用模型状态,实际上FluentValidation为你做了我相信。请参阅我的编辑。 – Sam 2011-04-02 22:59:35
您是否尝试向视图添加验证摘要,然后使用ModelState.AddModelError(“”,“错误消息”)添加错误?带有一个布尔参数等于true(我相信)的验证摘要将拾取与特定属性无关的所有ModelState错误。 – Mayo 2011-04-02 23:07:12