Как получить доступ к внешним ресурсам с веб-сайта Aspx

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

Я добавил свои ресурсы к моим библиотекам классов, и теперь я пытаюсь выяснить то, что лучший способ получить доступ к ресурсам от моей разметки. Когда мои ресурсы были в папке App_GlobalResources, я смог получить доступ к ним при помощи выражения, такого как это:

<$ Resources: MyApp.Name %>  for server controls

Или

<%=Resources.MyApp.Name %> for plain text

Каков лучший способ получить доступ к моим Ресурсам с моего веб-сайта aspx файлы теперь, когда они находятся в Библиотеке классов DLL?

Спасибо за помощь!

7
задан mga911 26 February 2010 в 02:25
поделиться

2 ответа

Я нашел отличную статью, в которой обсуждается расширение модели поставщика ресурсов . Он позволяет использовать выражения для доступа к внешним ресурсам:

Синтаксис выражения $ Resources для модели поставщика по умолчанию (явные глобальные ресурсы) следующий.

<%$ Resources: [resourceType], [resourceKey] %>

То же выражение может использоваться для доступа к внешним ресурсам при настройке ExternalResourceProviderFactory со следующим изменением синтаксиса.

<%$ Resources: [assemblyName]|[resourceType], [resourceKey] %>

Например, чтобы получить ресурс из сборки CommonResources.dll из типа глобального ресурса «CommonTerms», вы должны использовать следующее явное выражение.

<asp:Label ID="labGlobalResource" runat="server" Text="<%$ Resources:CommonResources|CommonTerms, Hello %>" ></asp:Label>
4
ответ дан 7 December 2019 в 14:31
поделиться

Я использую библиотеку классов Util, которая помимо множества других полезных классов и функций содержит класс i18n с общедоступной общей функцией, которая возвращает значение (строку) ресурса в файле ресурсов на основе его имени и LCID. Я добавляю ссылку на эту dll в своих веб-проектах и ​​там, где это необходимо, например, в файле кода программной части для ярлыка, который я пишу:

 MyLabel.Text = i18n.GetResourceString("MyStringName",1033)

Вы можете найти более подробное описание метода, который я использую здесь Надеюсь, что с предоставленными там подробностями вы сможете принять или адаптировать мое решение.

0
ответ дан 7 December 2019 в 14:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: