c# - 如何获取带有参数的本地化属性错误消息?

标签 c# validation data-annotations

我使用验证属性,并且想要本地化我的错误消息。我发现this :

[RegularExpression(
    "^[a-zA-Z0-9_]*$", 
    ErrorMessageResourceType=typeof(Resources.RegistrationModel),
    ErrorMessageResourceName= "UsernameError"
)]

您甚至可以使用如下资源字符串来完成此操作:

"{0} is in an invalid format."

它将填写属性名称。几乎是我想要的,但是我想传递一个特定的字符串,例如 "User name""Phone number" (实际上我想获取这些字符串也来自资源文件)。

这可能吗?或者我的资源文件中是否必须有很多非常相似的字符串?

最佳答案

您应该使用Display属性。

示例

[Display(Name = "Description", ResourceType = typeof(Messages))]
public MessageModel Description { get; set; }

当然,Name参数应该像资源中的字符串一样命名。

关于c# - 如何获取带有参数的本地化属性错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36627191/

相关文章:

c# - 获取字符串中未使用的字符?

c# - 在 .NET 中将 int 转换为 byte[4]

php - codeigniter 表单验证错误消息不显示

c# - 带枚举的 RegularExpression 属性

c# - 我可以使用 DataAnnotations 来验证集合属性吗?

c# - Array.copy 从 C# 到 Delphi

c# - 将 Button.CommandParameter 绑定(bind)到 MVVM 对象以使用相同的 ICommand 到不同的按钮

javascript - 禁用隐藏字段的RequiredFieldValidator

验证全名的 Java 正则表达式只允许空格和字母

c# - 自定义数据注释 IsValid 永远不会被调用。 (ASP.NET MVC 2.NET 4)