Asp.net mvc 3 使用MVC3进行远程验证

Asp.net mvc 3 使用MVC3进行远程验证,asp.net-mvc-3,Asp.net Mvc 3,我刚刚读了MSDN上关于远程验证的文章。这很好,但它只显示验证特定属性值 是否有一种方法可以将模型中的其他值传递到特定属性的验证中?例如,假设一个用户想要取消订单中的一些项目-应该阻止他们输入大于原始订单金额的数字 谢谢不,你不能 布拉德·威尔逊: 此时,只有属性级别 验证器可以发出客户端消息 验证(因为这与 输入的想法更好 以 浏览器…没有可供选择的“模型” 从浏览器的角度来说 视图) 斯图尔特·利克斯: 我不相信你能勾引客户 使用IValidatableObject进行验证 嗯,我不确定你是

我刚刚读了MSDN上关于远程验证的文章。这很好,但它只显示验证特定属性值

是否有一种方法可以将模型中的其他值传递到特定属性的验证中?例如,假设一个用户想要取消订单中的一些项目-应该阻止他们输入大于原始订单金额的数字

谢谢

不,你不能

布拉德·威尔逊:

此时,只有属性级别 验证器可以发出客户端消息 验证(因为这与 输入的想法更好 以 浏览器…没有可供选择的“模型” 从浏览器的角度来说 视图)

斯图尔特·利克斯:

我不相信你能勾引客户 使用IValidatableObject进行验证


嗯,我不确定你是不是这个意思,但是你可以在RemoteValidation属性中使用额外的字段


也许我从错误的角度看待这个问题。有更好的方法吗?我想您有一个文本框,用户应该在其中键入数字。如果您使用的是“数字”控件,请检查它是否支持MaxValue。如果这是一个简单的输入,而不是自己呈现一个验证javascript,那么您呈现页面并知道当前的项目数。感谢您的输入。这将是一个文本框,因为该值变化很大(从1到10000)。我希望避免涉及客户端验证的解决方案,并试图将所有这些逻辑保留在服务器上——这是查看远程属性的最初意图,但我现在明白,这不可能像我所想的那样。