2015-07-28 3 views
0

Я создал два файла ресурсов: «SOSResources.en.resx» и «SOSResources.pt.resx».Aspx и aspx.cs Получение строк из разных файлов resx

На моей странице aspx, когда я пытаюсь использовать строку из этих файлов, как показано ниже, я получаю ее из стандартного файла resx на английском языке.

asp:Literal ID="btnDelete_Text" Text="<%$Resources:SOSResources, String1%>" 

Однако, если я пытаюсь получить ту же строку на код-за, как показано ниже, я получаю из файла португальского языка (который является языком пользователя).

btnEdit_Text.Text = Resources.SOSResources.String1 

Следующий код используется для обработки этого процесса. Предполагается выбрать язык пользователя или английский, если эта информация недоступна. Тем не менее, только пример из кода-кода получает пользовательский язык. Пример с страницы aspx всегда получает строки из английского файла resx.

protected override void InitializeCulture() 
    { 
     string lang; 

     if (ActiveUser != null && ActiveUser.Language != null) 
     { 
      lang = ActiveUser.Language; 
     } 
     else 
     { 
      lang = "en"; 
     } 

     Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang); 
     base.InitializeCulture(); 
    } 

Может кто-нибудь мне помочь? Как я могу заверить, что в обоих случаях страница будет получать строки с соответствующего языка? Я не уверен, что это правильный способ выполнить глобализацию в .NET.

+0

Что такое значение 'lang' переменной, которая передается в' CultureInfo'? – Kamo

+0

Это значение ActiveUser.Language: код языка, такой как «en», «pt» или «es», в зависимости от пользователя. Или, если эта информация не существует в базе данных, «en» (стандартный язык для системы). – TC55

ответ

0

После многих часов исследований я нашел этот пример, который работал для меня:

https://msdn.microsoft.com/en-us/library/bz9tc508(v=vs.85).aspx

В дополнение к этому, там был еще один вопрос, который также помог мне при попытке переместить код на сайт: Мастер или до PageBase.cs:

ASP.NET Web Page Globalization & Localization in Master Page C# 3.0

Смежные вопросы