ASP.NET验证 - 如何将参数与DataAnnotation错误消息一起使用

时间:2018-05-25 20:02:37

标签: c# asp.net asp.net-core

我目前正在尝试使用DataAnnotations进行模型验证,并在资源文件中定义错误消息,如下所示:

    [DisplayName("Username")]
    [Required(ErrorMessageResourceType = typeof(SiteResources), ErrorMessageResourceName = "RequiredField")]
    public string NomeCient { get; set; }

这完全没问题。但是,我想在我的错误字符串中使用参数,就像使用string.Format()一样。 例如,想象一下我想要验证一个类似的电话号码:

[RegularExpression(@"^\+?[\s\d]*$", ErrorMessageResourceType = typeof(SiteResources), ErrorMessageResourceName = "InvalidField")]

在这种情况下,我希望InvalidField成为&#34的行;值{0}无效。请插入有效的{1}。"其中{0}对应于用户输入,{1}对应于字段的显示名称。 到目前为止,我找不到办法做到这一点。如果资源字符串包含{0},它将默认从DisplayName中提取它。有没有办法传递输入值?如果没有,建议的替代方案是什么?

0 个答案:

没有答案