c# – 使用MVC过滤器进行国际化的问题

我有一个带有本地化资源文件的.NET 4.5.2应用程序(Messages.resx(对于pt),Messages.es.resx和Messages.en.resx).

MVC过滤器基于客户端语言设置线程文化.

我已经在一个有3台服务器的服务器场上发布,并且它运行良好一段时间,突然出现以下行为:

>其中一台服务器开始用英语消息回应pt文化请求.
>除此之外,未翻译为英语且仅在Messages.resx文件上的消息将返回空.
>如果客户端语言是es,则服务器返回西班牙语消息.

我们更改了服务器场,这发生在4个不同的服务器上.

我试图在AssemblyInfo上包含[assembly:NeutralResourcesLanguage(“pt”)],但问题仍然存在.

谁能帮我解决这个问题?

最佳答案 ‘MVC过滤器根据客户端语言设置线程文化.

为什么? IIS可以自动执行此操作.
使用:

<globalization uiCulture="auto" culture="auto" />

在web.config的system.web部分中

点赞