首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >比较属性的自定义ErrorMessage不起作用

比较属性的自定义ErrorMessage不起作用
EN

Stack Overflow用户
提问于 2013-11-14 20:58:00
回答 4查看 14.1K关注 0票数 20

重现步骤:

  1. 使用单个用户帐户创建一个新的MVC5项目。
  2. 查看在RegisterViewModel中为ConfirmPassword属性指定的ErrorMessage。它是“密码和确认密码不匹配。”。
  3. 构建并运行应用程序,并尝试使用不匹配的密码进行注册。我将显示错误消息“‘确认密码’和‘密码’不匹配。”,而不是模型中指定的错误消息。

Compare属性上的自定义ErrorMessage属性似乎不起作用。即使我指定了一个ErrorMessage,验证仍然会显示某种默认的消息。

这适用于System.Web.Mvc.CompareAttribute,但现在这是不推荐使用的,您应该改用System.ComponentModel.DataAnnotations.CompareAttribute,这会显示此问题。

我将Compare属性添加到属性并指定ErrorMessage,如下所示:

代码语言:javascript
运行
复制
[Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match. I'll even add some random text!")]
public string ConfirmPassword { get; set; }

预期的结果将是(,但这不是我得到的):

相反,我得到了这个“默认”的错误消息:

客户端验证已禁用。我是不是遗漏了什么?此示例取自MVC5模板,使用单个用户帐户作为身份验证。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19978239

复制
相关文章

相似问题

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