首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVC DataAnnotations remove错误消息

MVC DataAnnotations remove错误消息
EN

Stack Overflow用户
提问于 2012-05-01 04:31:16
回答 2查看 1.3K关注 0票数 1

我有以下视图模型字段:

代码语言:javascript
复制
[Required]
[StringLength(9)]
[RegularExpression(@"\d{9}", ErrorMessageResourceName = "Number_Format", ErrorMessageResourceType = typeof(MyTypeOfResource))]
public string Number{ get; set; }

正则表达式过滤器将处理大于9个字符的输入和正确的格式,并显示其验证消息,但StringLength也将显示其自己的默认错误消息。删除[StringLength(9)]将解决两个不同消息的问题,但我假设这个过滤器为SQL提供了有关数据类型最大大小的有价值的信息。还有别的办法吗?谢谢,

EN

回答 2

Stack Overflow用户

发布于 2012-05-01 04:36:54

如果您删除了StringLength,并且只有:

代码语言:javascript
复制
[Required]
[RegularExpression(@"\d{9}", ErrorMessageResourceName = "Number_Format", ErrorMessageResourceType = typeof(MyTypeOfResource))]
public string Number{ get; set; }

你应该做得很好。RequiredAttribute将验证属性是否已设置,并且RegularExpressionAttribute将验证它是否为全数字的9个字符的字符串。

编辑:

关于假设过滤器为SQL提供了有价值的信息的评论...不,它不是用来做这个的。DataAnnotations旨在架起客户端和表示层验证之间的桥梁。MVC确实在内部使用DataAnnotations来验证ViewModel,但是ViewModel不一定(读:不应该)被认为是域模型。ViewModel是您想要向用户显示的内容的模型,而域模型通常代表数据。

不久前,我写了一篇博客,向您介绍了MVC3中的DataAnnotations,以及该框架如何在客户端将它们转换为不显眼的JavaScript验证。这绝对值得一试。

Code is hereblog is here

票数 2
EN

Stack Overflow用户

发布于 2012-05-01 04:33:33

更改StringLength属性以包含空白错误消息,如下所示:

代码语言:javascript
复制
[StringLength(9, ErrorMessage = "")]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10390176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档