dev*_*ife 9 globalization asp.net-mvc resx data-annotations
我在MVC2应用程序中使用数据注释,并且在尝试将RESX文件资源用于错误消息时有点气馁.
我已经尝试了以下但继续获得异常"属性参数必须是属性参数类型的常量表达式,typeof表达式或数组创建表达式"
[Required(ErrorMessage = Resources.ErrorMessages.Required)]
[Required(ErrorMessageResourceName = Resources.ErrorMessages.Required,
ErrorMessageResourceType = typeof(Resources.ErrorMessages)]
Run Code Online (Sandbox Code Playgroud)
我不断收到该错误消息,除非我替换ErrorMessageResourceName为"必需"而不是Resources.ErrorMessages.Required.
任何人都可以告诉我,如果我这样做的话吗?
Aar*_*ght 13
是的,你最后做的事情基本上是正确的.该ErrorMessageResourceName采取什么顾名思义,该名称的资源,而不是资源本身.
Resources.ErrorMessages.Required指向实际(本地化)错误消息(资源).资源的名称只是"必需",资源管理器的类型(用于ErrorMessageResourceType)是包含该资源的Resources.ErrorMessages类,在本例中是类.
所以你的声明应该是这样的:
[Required(ErrorMessageResourceType = typeof(Resources.ErrorMessages),
ErrorMessageResourceName = "Required")]
public string Something { get; set; }
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9629 次 |
| 最近记录: |