如何在asp.net mvc中正确验证发布的数值?

时间:2009-09-11 16:59:23

标签: asp.net-mvc validation

在asp.net mvc Web应用程序中,我想显示无效模型值的自定义消息。我遇到的问题是使用数字属性。用户可以将字符串放入绑定到小数属性的文本框中,然后单击“提交”。由于asp.net mvc模型绑定器无法将字符串值绑定到我的对象上的decimal属性,因此它只是将其默认值保持为0.

我在我的模型中进行了一些模型验证以检查无效值并返回好消息,但是当我到达此代码时,显然十进制属性在我的对象上无效(因为它是0)。我正试图找出一种实现这种验证的好方法。我似乎需要拦截表单值并在那里进行验证。

我一直试图将所有验证保存在同一个地方,但似乎这个解决方案会在我的代码中遍布许多Request.Form。也许我应该编写自己的模型绑定器并在那里进行这种验证。我只是在寻找一些意见。谢谢!

1 个答案:

答案 0 :(得分:1)

你在检查ModelState.IsValid吗?应该已经抓住了这个。