加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.NET MVC 2中的DataAnnotations – 阻止MVC将

发布时间:2020-12-16 03:16:09 所属栏目:asp.Net 来源:网络整理
导读:我试图创建一个自定义版本的RequiredAttribute来替换内置的,我已经让它适用于具有字符串值的属性,但是具有DateTime或整数的属性,默认的RequiredAttribute似乎是自动应用的(如果财产不可为空!) 我的问题是我希望能够使用我的自定义必需验证器指定一个DateTim
我试图创建一个自定义版本的RequiredAttribute来替换内置的,我已经让它适用于具有字符串值的属性,但是具有DateTime或整数的属性,默认的RequiredAttribute似乎是自动应用的(如果财产不可为空!)

我的问题是我希望能够使用我的自定义必需验证器指定一个DateTime属性,该验证器从资源文件中获取错误消息(我不想告诉RequiredAttribute资源文件的类型和每次我申请它都是关键.这就是为什么我要定制一个.)

如何防止框架将所需属性应用于DateTime和int等类型的属性,而不将它们更改为可为空.

谢谢

解决方法

找到了!我把它放在Global.asax.cs文件中

DataAnnotationsModelValidatorProvider.AddImplicitRequiredAttributeForValueTypes = false;

DataAnnotationsModelValidatorProvider类有一个名为“AddImplicitRequiredAttributeForValueTypes”的静态属性,默认情况下必须为true,并将其设置为false可解决问题.

(对于任何试图做同样事情的人来说,我都记录了这个条目here)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读