微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MVC 5 如何验证可空整数

如何解决MVC 5 如何验证可空整数

这已经被多次询问和回答,但我有一个特殊的情况,我的模型中有可以为空的整数。

型号:

[Range(0,int.MaxValue,ErrorMessage = "Please enter valid integer number")]
public int? Jan { get; set; }

在我的编辑表单中,如果输入“x”,则会出现浏览器错误弹出窗口“请输入数字”。我自己的客户端验证似乎没有启动。如果我什么都不输入,那么它会在服务器端炸毁,因为我的存储库代码中需要一个参数。

我需要它来验证客户端上的非整数,并且当有人尝试使用空值提交表单时,我还需要它来处理空值。我不能求助于必需的数据注释,因为如果我这样做,将不会加载任何数据。这是从遗留代码到 MVC 的转换。

更新 - 澄清:

我正在处理很多可为空的整数。尝试使它们成为必需的决定是我的 - 我对其他选择持开放态度。我不能改变int?由于各种原因在模型中。因此,我需要在客户端和服务器上针对空值进行验证,以确保输入的是整数。

解决方法

您可以使用 HTML5 required 属性客户端来防止输入空值。如果您真的想确保没有空值发送到服务器,我相信您还需要进行一些服务器端验证。

HTML5 Required Attribute

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。