繁体   English   中英

Model 验证未显示错误消息

[英]Model Validation not showing error messages

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

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

这应该显示我设置的所需错误消息,它是一个int

这显示了正确的错误消息 - 它是一个string

应该显示我在 model 中设置的错误消息

如前所述,这发生在intdecimal数据类型上。 以下是我的 model 中的属性:

    [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; }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM