2009-05-22 5 views
0

У меня есть приложение asp.net с некоторыми локальными ресурсами. Эти ресурсы используются в ASPX и фоновый код файлах:asp.net: развертывание локальных ресурсов - возможно ли внедрение?

aspx: 
<asp:TextBox ID="TextBox1" runat="server" Text="<%$ Resources:testTag %>" /> 

.vb: 
TextBox1.Text = GetLocalResourceObject("testTag").ToString 

Если я развернуть .resx файлов с приложением, нет никаких проблем.

Однако, если я изменил действие сборки в файле resx на «Встроенный ресурс», ресурсы недоступны, даже если они находятся в DLL, которая создается.

Возможно ли развертывание ресурсов в DLL, или я придерживаюсь управления & развертывания файлов resx на сервере?

+0

Вы когда-нибудь решали эту проблему? В настоящее время я пытаюсь написать свой собственный ResourceProviderFactory для поддержки того же сценария, но мне еще этого не удалось - http://stackoverflow.com/questions/10533721/asp-net-how-to-get-assembly-from- virtual-path-in-custom-iresourceprovider-impl – Buthrakaur

ответ

0

Да, это возможно.

Оформить заявку this codeproject. Это немного старый, но все же действительный.

Другой пример: от Microsoft, here.

UPDATE

Чтобы быть честным, я не пошел так далеко с нашими локализаций еще (мы все еще используют, как правило, встроенные файлы ресурсов); однако, here is a link к примеру о том, как получить доступ к диспетчеру ресурсов с вашей страницы aspx. Это последнее сообщение в этой теме.

GeorgeZ заявляет, что загружает диспетчер ресурсов в метод page_init. Я уверен, что вы можете поместить это в какой-то тип BasePage, который наследует все ваши страницы, чтобы не иметь его напрямую во всех своих кодах.

+0

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

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