asp.net-mvc – 如果用户在int字段中放入非数字字符串,则自定义验证错误消息

前端之家收集整理的这篇文章主要介绍了asp.net-mvc – 如果用户在int字段中放入非数字字符串,则自定义验证错误消息前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
这问题之前已经被问过了,但是我认为搜索条件对于我来说太通用了,无法找到我正在寻找的答案,所以我会再问一遍.

我有一个带有int属性的模型和一个范围注释.

如果用户输入的内容不是int,则验证消息将以“< bad data>”值响应对于’< property name>‘无效…这很好,但我想提供更多反馈,即在此字段中期望一个整数值.

由于此验证在其他验证器查看之前失败,因此我不知道如何(或者是否可能)覆盖默认的验证器消息.

我有什么选择?

每个请求,我发布的代码,但它没有很多:

[Range(0,65535,ErrorMessage="Port must be between 0 and 65535.")] 
public int Port { get; set; }

在到达RangeAttribute之前进行验证.我想用我自己选择的替换默认消息.

解决方法

如果您正在使用标准注释,则应该能够使用以下内容覆盖错误消息:
[MyAnnotation(....,ErrorMessage = "My error message")]
public int myInt { get; set; }

或者你真的想要附加到默认错误消息而不是替换它(不清楚有问题)?

更新:误读 – 建议这个答案:How to change the ErrorMessage for int model validation in ASP.NET MVC?或更好,但How to change ‘data-val-number’ message validation in MVC while it is generated by @Html helper

猜你在找的asp.Net相关文章