c# – 如何使用数据注释来验证可以为空的int
发布时间:2020-12-15 23:48:25 所属栏目:百科 来源:网络整理
导读:在MVC 5项目中,我有一个可以为null的模型.由于可能无法解释的原因,它需要是一个可以为空的int而不能是一个字符串. // Value can be null or an integer from 0 to 145 [Range(0,145)]public int? Criterion { get; set; } 预期注释是在表单中输入值时提供用
在MVC 5项目中,我有一个可以为null的模型.由于可能无法解释的原因,它需要是一个可以为空的int而不能是一个字符串.
// Value can be null or an integer from 0 to 145 [Range(0,145)] public int? Criterion { get; set; } 预期注释是在表单中输入值时提供用户反馈. Criterion: @Html.TextBoxFor(m => m.Criterion) <span class="text-danger">@Html.ValidationMessageFor(m => m.Criterion)</span> 虽然用户在输入非整数值时会收到反馈,但Range属性似乎不起作用. 为了强制实现可以为空的整数范围,我是否需要使用正则表达式,还是有更简单的方法来强制执行规则? 解决方法
如果我没记错的话,[Range]数据注释应该按照预期的可空整数工作(即,只有当一个数字存在时,它才会验证数字是否在该范围内).您需要确保在POST操作中调用ModelState.IsValid以触发此服务器端验证.
例 下面的示例演示了使用null,-1,1和150作为输入值及其预期结果: 你可以see an example demonstrating this here. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |