ASP.NET本地化不适合我

ASP.NET本地化不适合我,asp.net,localization,webforms,Asp.net,Localization,Webforms,我知道我在做一些根本错误的事情,但我不太明白 我的App_GlobalResources文件夹中有2个资源文件:Global.resx和Global.fr-CA.resx 我的网络表单上有以下标签: <asp:Label ID="Label1" runat="server" Text="<%$ Resources:Global, Test %>" /> 但是,当我重新运行应用程序时,它不会从Global.fr-CA.resx提取值-它仍然从Global.resx提取值。

我知道我在做一些根本错误的事情,但我不太明白

我的App_GlobalResources文件夹中有2个资源文件:Global.resx和Global.fr-CA.resx

我的网络表单上有以下标签:

<asp:Label ID="Label1" runat="server" Text="<%$ Resources:Global, Test %>" />
但是,当我重新运行应用程序时,它不会从Global.fr-CA.resx提取值-它仍然从Global.resx提取值。我做错了什么

谢谢

您应该重写page类的方法,并将
page.Culture
page.UICulture
设置为特定的区域性
fr CA

protected override void InitializeCulture()
{
    base.InitializeCulture();
    Page.Culture = Page.UICulture = "fr-CA";
}

程序集的中性文化是什么?因此在
Global.resx
文件中有英文字符串?如果您还将
Page.UICulture
设置为
fr CA
,会有帮助吗?这很有效!在将其移动到override InitializeCulture()之前,我尝试过这样做。如果你修改你的答案,我会接受的。
protected override void InitializeCulture()
{
    base.InitializeCulture();
    Page.Culture = Page.UICulture = "fr-CA";
}