C# 使用Griffin.MvcContrib的RegularExpression消息错误

C# 使用Griffin.MvcContrib的RegularExpression消息错误,c#,regex,asp.net-mvc,resources,griffin.mvccontrib,C#,Regex,Asp.net Mvc,Resources,Griffin.mvccontrib,我正在使用Griffin.MvcContrib进行元数据消息错误验证 我已添加自定义验证以添加正则表达式验证: protected override IEnumerable<ModelValidator> GetValidators(ModelMetadata metadata, ControllerContext context, IEnumerable<Attribute> attributes) { List<ModelValidator> va

我正在使用Griffin.MvcContrib进行元数据消息错误验证

我已添加自定义验证以添加正则表达式验证:

protected override IEnumerable<ModelValidator> GetValidators(ModelMetadata metadata, ControllerContext context, IEnumerable<Attribute> attributes) {
    List<ModelValidator> vals = base.GetValidators(metadata, context, attributes).ToList();

    //if (metadata.ModelType.Name == "DateTime")
    if (metadata.DataTypeName == "telephone") {
        DataAnnotationsModelValidationFactory factory;

        RegularExpressionAttribute regex = new RegularExpressionAttribute(@"^(((\+?34([ |\-])?)|(\+?\(34\)([ |\-])?))?[9|6|7]((\d{1}([ |\-])?[0-9]{3})|(\d{2}([ |\-])?[0-9]{2}))([ |\-])?[0-9]{2}([ |\-])?[0-9]{2})$");
        //regex.ErrorMessage = "Invalid date format";
        if (!AttributeFactories.TryGetValue(regex.GetType(), out factory))
            factory = DefaultAttributeFactory;

        vals.Add(factory(metadata, context, regex));
    }

    return vals.AsEnumerable();
}
在资源中,我有下一个键

CommonPrompts_RegularExpression         {0} fu  
Phone_RegularExpression                 {0} fa
RegularExpression                       Incorrect Format
但它一直在向我传达这样的信息:

El campo[es:Phone]在正则表达式中的一致性“^+?34[|-]?+?34[|-]?[9 | 6 | 7]\d{1}[|-]?[0-9]{3}\d{2}[|-]?[0-9]{2}[|-]?[0-9]{2}[|-]?[0-9]{2}

我还添加了以下信息:

AgentDto_Phone_RegularExpression                                {0} regular 
AgentCreateEditViewModel_AgentDto_Phone_RegularExpression       {0} regular 
没有任何运气

我需要在资源中添加什么来更改消息

AgentDto_Phone_RegularExpression                                {0} regular 
AgentCreateEditViewModel_AgentDto_Phone_RegularExpression       {0} regular