Her*_*rin 5 globalization asp.net-mvc localization asp.net-mvc-validation asp.net-mvc-4
我正在开发一个MVC4应用程序,因为在我的应用程序中有选择语言的选项,并根据所选的语言显示所有标签和消息。在此应用程序中,我对MVC进行了一个必填字段验证,它将显示验证我只在我的应用程序文件夹中为本地化创建了两个不同的xml文件,即用于英语lanaguage的Resource.resx和用于德语langauge的Resource.de-DE.resx。我在Model类中使用了以下代码:
[Required(ErrorMessageResourceType = (typeof(MyFolder.MyResource.Resource)), ErrorMessageResourceName= "FromDateRequiredMessage")]
[Display(Name = "FromDate", ResourceType = typeof(MyFolder.MyResource.Resource))]
public DateTime FromDate { get; set; }
Run Code Online (Sandbox Code Playgroud)
所以在这里我有Resource.resx xml文件,并且其中的键是'FromDateRequiredMessage',它与Resource.de-DE.resx德语文件中的键相同,但是值不同。此外,我在Web中进行了以下更改。全球化的配置文件:
<globalization enableClientBasedCulture="true" culture="auto" uiCulture="auto"/>
Run Code Online (Sandbox Code Playgroud)
因此,我希望当我从应用程序中选择德语时,它应该向我显示德语的验证错误。但是在这里,它将仅向我显示英语的验证消息。
那么,现在我该怎么办?请帮我。
请使用Application_PreRequestHandlerExecute()您的应用程序Global.asax文件中的方法。此方法将在任何页面请求或其验证之前执行。
还可以在此方法中设置当前的文化值。