我目前正在尝试使用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中提取它。有没有办法传递输入值?如果没有,建议的替代方案是什么?