我刚开始使用显式资源文件。我执行了以下步骤:
App_GlobalResources
LocalizedText.en-us.resx
和LocalizedText.resx
InstitutionTitle
”LocalizedText.en-us.resx
中,值为“Institution
”,LocalizedText.resx
中的值为“Instelling
”在我的.aspx
文件中,我有以下标签:
<asp:Label ID="lblInstitution" runat="server" Text="<%$ Resources:LocalizedText, InstitutionTitle %>" />
当我运行此页面时,我总是得到荷兰语版本。无论我是否在我的浏览器(FF和IE7)中设置语言,我总是得到荷兰语版本。当我请求浏览器的语言时,我得到en-us
(使用:Response.Write(Request.Headers["Accept-Language"]);
)。
问题是什么?我该如何解决?
答案 0 :(得分:2)
在浏览器中设置语言首选项是不够的。您必须确保在ASP.NET中相应地设置当前线程的 Culture 和 UICulture 属性。
您可以在页面上以编程方式或声明方式执行此操作(&lt;%@ Page%&gt;指令的Culture和UICulture属性)。
或者您可以通过设置下面显示的web.config条目并将页面/母版页的Culture / UICulture属性设置为“auto”来让ASP.NET自动设置它们。
// web.config:
<globalization enableClientBasedCulture="true" ...>
// page/masterpage:
<%@ Page ... Culture="auto" UICulture="auto" %>
查看this page了解详情。
答案 1 :(得分:0)
@martijn:
检查浏览器缓存设置。 缓存应该一直关闭 在开发时。
安装Firebug(FF)和Fiddler(IE) 看看被转移的是什么 电线。
希望这会有所帮助......
签署
同胞乡下人