2

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

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

对于本地化,我使用的是从这里找到的示例,但我发现我对所有语言都有相同的验证消息。

原因是验证器不知道我更改了语言。

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

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

4

1 回答 1

1

当 WithLocalizedMessage 为所有语言返回相同的值时,很可能尚未设置文化(这发生在 POST 上,其中操作处理程序尚未运行)

解决方案是在不同的位置设置文化: 为多语言 ASP.NET MVC Web 应用程序设置 CurrentCulture 的最佳位置

于 2016-08-22T12:02:03.290 回答