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

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

在我的 MVC 3 应用程序中,我使用的是流畅验证

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

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

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

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

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

最佳答案

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

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

关于c# - Fluent 验证中的本地化消息 (MVC3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12174768/

相关文章:

c# - 公共(public)属性的类内部使用

c# - .NET MVC : Restrict action based on Role level

asp.net-mvc - 在 Razor View 中按要求制作字段

c# - 通过 "Show Desktop"/Win+D 保持窗口可见

c# - 使用自定义字母顺序排序

c# - SaveFileDialog -(文件路径)不存在。验证是否给出了正确的文件名

c# - DropDownList 未在 ASP.NET MVC 中填充正确的值

javascript - 如何在mvc中的jquery中使用@符号

.net - 在 Razor ViewEngine 中显示错误

asp.net-mvc-3 - 在 mvc 3 中的单个按钮提交的单个 View 上保存来自不同部分 View 的数据