Получить данные Sitecore "Site" из web.config в WCF - PullRequest
4 голосов
/ 08 апреля 2011

Я понимаю проблемы с WCF и Sitecore, поскольку Sitecore.Context не будет доступен для запроса WCF.

Но все, что я действительно хочу сделать, это передать имя сайта и сделать так, чтобы WCF вернул некоторые атрибуты этого узла "site" из раздела "sites" в файле web.config.

Например, в приведенном ниже коде у меня есть имя сайта «mysitename» для сайта «www.mysite.com». Как я могу программно получить имя хоста сайта из web.config?

<sites>
   <site name="mysitename" hostName="www.mysite.com" virtualFolder="/" physicalFolder="/" rootPath="/sitecore/content" startItem="/home" database="web" domain="extranet" allowDebug="true" cacheHtml="true" htmlCacheSize="100MB" registryCacheSize="0" viewStateCacheSize="0" xslCacheSize="5MB" filteredItemsCacheSize="2MB" enablePreview="true" enableWebEdit="true" enableDebugger="true" disableClientData="false" />
</sites>

Мне все равно, использует ли он готовые функции sitecore или просто код .net, который может прочитать этот раздел web.config. Любой отзыв поможет, спасибо.

1 Ответ

13 голосов
/ 08 апреля 2011

Вы должны иметь возможность использовать что-то вроде:

var site = Sitecore.Configuration.Factory.GetSite(sitename);

Предполагается, что возвращаемый объект содержит атрибуты сайта из определения конфигурации.У меня сейчас нет Sitecore на моей машине, поэтому я не могу точно проверить, но вы можете быстро его попробовать.

...