我使用全局静态方法进行本地化。此静态方法获取资源名称并为其返回字符串资源值。这个方法就像这样
public static string GetResourceValue(string ResourceName)
{
return "StringValue";
}
我正在从我的视图中访问此方法
@MyClass.GetResourceValue("ResourceName")
并返回要显示的字符串值。这工作正常,但如何在我的模型中使用相同的方法?有没有办法从这个静态方法设置ErrorMessage值这样的东西
[Required(ErrorMessage=MyClass.GetResourceValue("ResourceName"))]
public string Name { get; set; }
答案 0 :(得分:3)
我使用此link
解决了这个问题我刚创建了具有静态属性的新类
public class LocalizedErrorMsg
{
public static string NameRequiredMsg
{
get
{
return MyClass.GetResourceValue("NameRequiredMsg");
}
}
}
并在数据注释中将ErrorMessageResourceName作为静态属性名称传递,将ErrorMessageResourceType作为类名传递给
[Required(ErrorMessageResourceName = "NameRequiredMsg", ErrorMessageResourceType = typeof(LocalizedErrorMsg))]
public string Name { get; set; }
问题是它需要创建额外的类来存储静态属性,这些属性从我的本地化全局静态方法返回错误消息。我搜索了但除此之外我没有得到解决方案。