从WCF中的web.config获取Sitecore“站点”数据

时间:2011-04-08 18:08:39

标签: c# .net wcf web-config sitecore

我了解WCF和Sitecore的问题,因为Sitecore.Context无法用于WCF请求。

但我真正想做的就是传入一个站点名称,让WCF从web.config中的“站点”部分返回该“站点”节点的一些属性。

例如,在下面的代码中,网站“www.mysite.com”的网站名称为“mysitename”。我怎么能以编程方式从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函数,或者只是能够读取web.config的这一部分的.net代码。任何反馈都会有所帮助,谢谢。

1 个答案:

答案 0 :(得分:13)

你应该可以使用类似的东西:

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

返回的对象应该包含配置定义中的站点属性。我的机器现在没有Sitecore,因此无法准确检查,但您可以快速尝试。