我正在尝试以下事项:
[Display(Name = Resources.LcmsBs.Models.UserName)]
[ToolTip(Resources.LcmsBs.ToolTips.UserName)]
public string UserName { get; set; }
我收到以下编译错误:
属性参数必须是属性参数类型的常量表达式,typeof表达式或数组创建表达式
避免代码中的硬编码常量的最佳做法是什么? 是否可以从资源中设置属性值?
答案 0 :(得分:10)
您的问题略有不同,但以下问题的答案可能适用于您的问题
DataAnnotations and Resources don't play nicely
如下所示
[Display(ResourceType = typeof(Resources.LcmsBs.Models), Name = "UserName")]
答案 1 :(得分:4)
如果您使用的是c#6.0或更高版本,最好的方法可能是:
[Display(Name = nameof(Resources.LcmsBs.Models.UserName), ResourceType = typeof(Resources.LcmsBs.Models))]