.net 如何本地化实体框架内置验证消息/异常?

.net 如何本地化实体框架内置验证消息/异常?,.net,entity-framework,c#-4.0,entity-framework-4.1,.net,Entity Framework,C# 4.0,Entity Framework 4.1,除了基于注释的验证机制之外,EF还提供了所谓的“方面”。这意味着在字符串属性上可以有一个“Max Length”方面(通过EF模型配置),其中指定的最大长度为80个字符。当您使用数据库优先的方法时,这通常由EF自动完成 如果现在属性包含的字符数超过指定的数量,EF将在消息中抛出DbEntityValidationResult [PropName]:字段[PropName]必须是最大长度为“80”的字符串或数组类型 我的问题是:如何将此类消息本地化???我还需要德语和意大利语…Maarten Ba

除了基于注释的验证机制之外,EF还提供了所谓的“方面”。这意味着在字符串属性上可以有一个“Max Length”方面(通过EF模型配置),其中指定的最大长度为80个字符。当您使用数据库优先的方法时,这通常由EF自动完成

如果现在属性包含的字符数超过指定的数量,EF将在消息中抛出DbEntityValidationResult

[PropName]:字段[PropName]必须是最大长度为“80”的字符串或数组类型


我的问题是:如何将此类消息本地化???我还需要德语和意大利语…

Maarten Balliauw为此写了一篇博客:

更新类以使用
ErrorMessageResourceType
ErrorMessageResourceName
参数,而不是通常传递的ErrorMessage参数

此外,您还可以本地化DisplayNameAttributes;下面是一篇Stackoverflow文章,解释了如何做到这一点:

更新

我认为如果您安装.NETFramework语言包,这些标准消息应该为您翻译


警告(发生在我身上):

我不希望为了本地化验证MSG而用验证注释装饰我的所有实体。但是我以前也考虑过语言包…我想我必须尝试一下