Asp.net mvc 3 .NET MVC 3验证默认ErrorMessageResourceType

Asp.net mvc 3 .NET MVC 3验证默认ErrorMessageResourceType,asp.net-mvc-3,validation,localization,Asp.net Mvc 3,Validation,Localization,我想本地化验证属性的值。我有: [Compare("Password", ErrorMessageResourceName = "ComparePassword", ErrorMessageResourceType = typeof(Localization.labels))] 问题是,如何指定默认的ErrorMessageResourceType?资源将始终来自本地化。标签,因此我不想为每个验证属性使用设置ErrorMessageResourceType。您可以编写一个自定义验证属性: pu

我想本地化验证属性的值。我有:

[Compare("Password", ErrorMessageResourceName = "ComparePassword", ErrorMessageResourceType = typeof(Localization.labels))]

问题是,如何指定默认的
ErrorMessageResourceType
?资源将始终来自
本地化。标签
,因此我不想为每个验证属性使用设置
ErrorMessageResourceType

您可以编写一个自定义验证属性:

public class MyCompareAttribute : CompareAttribute
{
    public MyCompareAttribute(string otherProperty): base(otherProperty)
    {
        ErrorMessageResourceType = typeof(Localization.labels);
    }
}
然后:

[MyCompare("Password", ErrorMessageResourceName = "ComparePassword")]

谢谢,还有其他默认属性保持不变的选项吗?比如包装CompareAttribute什么的?@jaap,我现在想不起来了。