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

asp.net-mvc – 范围注释在无和100之间?

我有一个[范围]注释,如下所示:
[Range(0,100)]
public int AvailabilityGoal { get; set; }

我的网页如下所示:

<%=Html.TextBoxFor(u => u.Group.AvailabilityGoal)%>

它的工作原理应该是,我只能输入0到100之间的值,但是我也希望输入框是可选的,如果输入框为空,用户不应该得到验证错误.这与范围无关,但因为类型是一个整数.如果用户把它留空,它应该使AvailabilityGoal = 0,但是我不想强制用户输入零.

我试过这个(显然)没有工作:

[Range(typeof(int?),null,"100")]

可以用Data Annotations或其他方式解决这个问题吗?

提前致谢.

鲍比

解决方法

当给定一个空值时,不必将[范围]属性更改为[范围]和其他内置的DataAnnotations验证器no-op.只是使属性本身类型为int?而不是int.始终自动需要不可空值的ValueType属性(如int).

原文地址:https://www.jb51.cc/aspnet/249738.html

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

相关推荐