是什么导致这些字段被验证?

问题描述 投票:-2回答:2

我的表格中有很多字段。当它们被提交时(通过ajax)下拉,其中一个文本字段变为红色以表示它们是空的。

没有其他字段以这种方式验证,我没有在ViewModel中设置任何验证规则。

有谁知道是什么原因造成的?谢谢。

更新:看起来这个验证发生在所有数字字段上(即提交long的地方)

enter image description here

c# asp.net-mvc entity-framework validation asp.net-ajax
2个回答
1
投票

int字段应该是html中的number类型,它应该提交0,如果它是文本它提交null值,null无法与int绑定,这就是你得到验证错误消息的原因

如果需要保存空值,则需要将其设为可为空的int(即int?);


0
投票

在MVC中,默认情况下,诸如int,long,double,bool等非可空字段将具有所需的验证,即使它们未使用required属性进行修饰。

要允许空值并删除验证,您可以将字段类型更改为可为空的,例如长?,int ?,布尔?等等

© www.soinside.com 2019 - 2024. All rights reserved.