ASP.NET локализация не работает для меня - PullRequest
1 голос
/ 28 октября 2010

Я знаю, что я делаю что-то в корне неправильно, но я не могу понять это ...

В моей папке App_GlobalResources есть 2 файла ресурсов: Global.resx и Global.fr-CA.resx.

На моей веб-форме есть следующая метка:

<asp:Label ID="Label1" runat="server" Text="<%$ Resources:Global, Test %>" />

Когда я запускаю форму, она правильно отображает значение из Global.resx. Теперь, в коде позади, я хочу вручную изменить культуру для извлечения из моего файла fr-CA resx:

Page.UICulture = "fr";
Page.Culture = "fr-CA";

Однако, когда я перезапускаю приложение, оно не извлекает значение из Global.fr-CA.resx - оно все равно извлекает из Global.resx Что я делаю не так?

Спасибо !!

1 Ответ

3 голосов
/ 28 октября 2010

Вы должны переопределить метод InitializeCulture () вашего класса страниц и установить для Page.Culture и Page.UICulture конкретную культуру fr-CA:

protected override void InitializeCulture()
{
    base.InitializeCulture();
    Page.Culture = Page.UICulture = "fr-CA";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...