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

模型验证未显示错误消息

如何解决模型验证未显示错误消息

我正在开发一个 ASP.NET Core MVC Web 应用程序,但是,我遇到了数据注释问题。

对于 intdecimal,我无法覆盖数据注释的错误消息。对于 string,数据注释有效。

This should be showing the required error message that I set,it is an int

This is showing the correct error message - it is a string

The is should be showing an error message that I set in it's model

前面提到的 intdecimal 数据类型会发生这种情况。 以下是我的模型中的属性

    [required(ErrorMessage = "Please provide the model")]
    [StringLength(55,ErrorMessage = "The model is too long")]
    public string MODEL { get; set; }

    [required(ErrorMessage = "Please provide the service period")]
    [Range(0,5,ErrorMessage = "Please provide a smaller number")]
    [RegularExpression("([0-9]+)",ErrorMessage = "Not a number")]
    public int SERVICE_PERIOD { get; set; }

正如我之前所说,string 数据类型按预期工作,但是,int 数据类型没有显示我自己需要的错误消息,也没有显示说明它的错误消息不是一个数字。 decimal 数据类型错误仅适用于数字大于 5 个数字时的数据注释,即范围数据注释。

希望得到任何帮助,谢谢。

解决方法

它对我有用。

试试这个属性:

[Range(0,int.MaxValue,ErrorMessage = "Please enter valid integer Number")]

或者你可以使用正则表达式:

[RegularExpression("([0-9]+)",ErrorMessage = "Please enter valid Number")]
public int bmi_number { get; set; }

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