Я пытаюсь использовать файлы ресурсов в приложении ASP.NET Web Forms (.NET 4.0). Я использую VS2012. У меня есть следующие файлы внутри папки App_GlobalResources
:Файл ресурсов не подбирается при использовании выражения ASP.NET
Address.resx
(язык по умолчанию, английский)Address.ja-JP.resx
(японский)
Проблема заключается в том, когда я пытаюсь отобразить текст на японском языке на странице ASP.NET (* .aspx-файл). Если я использую следующий синтаксис все работает отлично:
<%= Resources.Address.Street1 %>
Но когда я пытаюсь привязать его к свойству в asp:Label
управления по умолчанию текст (на английском языке) отображается вместо японски:
<asp:Label ID="lblStreet1" runat="server" Text='<%$ Resources:Address,Street1 %>'></asp:Label>
КСТАТИ культура создается в переменные сессии, а затем в главной странице у меня есть что-то вроде этого:
Thread.CurrentThread.CurrentCulture = (CultureInfo) Session["ci"];
Thread.CurrentThread.CurrentUICulture = (CultureInfo) Session["uci"];
Кроме того, я не знаю, если это уместно, или нет, но я Generat ed Address.ja-JP.resx
вне Visual Studio (с помощью Notepad ++), а затем переместил файл в папку App_GlobalResources
и включил файл в решение.
Я что-то упустил?
Благодаря d-блок, который может работать, но я не хочу идти по этому пути. Слишком много страниц уже используют синтаксис выражения: '<%$ ... %>' :( –
В этом случае, возможно, попробуйте использовать HttpContext.GetGlobalResourceObject. –
Спасибо, я попробовал с' Text =' <% # GetGlobalResourceObject ("Адрес", "Street1")%> '> ', но он не работает ... –