Fluent验证中的本地化消息(MVC3)

时间:2012-08-29 09:29:14

标签: c# asp.net-mvc asp.net-mvc-3

在我的MVC 3应用程序中,我正在使用fluent validation

public class AccountModelValidator : AbstractValidator<AccountModel>
    {
        public AccountModelValidator()
        {
           m.NewPassword).WithMessage(Translator.Data["ConfirmPasswordValidation"]);
        }
    }

对于本地化我使用的是here中的一个示例,但我发现我对所有语言都有相同的验证消息。

原因是验证者不知道我改变了语言。

我怎样才能正确地做到这一点?

也许我应该使用WithLocalizedMessage但它只适用于.resx

1 个答案:

答案 0 :(得分:1)

当WithLocalizedMessage为所有语言返回相同的值时,很可能尚未设置文化(这种情况发生在POST,动作处理程序还没有运行)

解决方案是将文化设置在不同的位置: Best place to set CurrentCulture for multilingual ASP.NET MVC web applications