通過將配置數據放入web.config中,我可以在幾個Web應用程序中使用Castle Windsor。Windows服務無法訪問app.config中的Castle Windsor配置數據
因此,當我決定在Windows服務中使用它時,我認爲它會很小。我的app.config文件如下所示:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="castle" type="Castle.Windsor.Configuration.AppDomain.CastleSectionHandler,Castle.Windsor" />
</configSections>
...various other stuff...
<castle>
<components>
...component listings...
</components>
</castle>
</configuration>
我創建我的容器是這樣的:
WindsorContainer windsorContainer = new WindsorContainer(new XmlInterpreter());
但是瘋狂,當應用程序運行時,我得到
Could not find section 'castle' in the configuration file associated with this domain.
at Castle.Core.Resource.ConfigResource..ctor(String sectionName)
at Castle.Core.Resource.ConfigResource..ctor()
at Castle.Windsor.Configuration.Interpreters.AbstractInterpreter..ctor()
at Castle.Windsor.Configuration.Interpreters.XmlInterpreter..ctor()
...application stack trace...
我'有點朦朧。任何人有任何提示?
乾杯
大衛
該應用從app.config中讀取其他配置數據就好了,但Castle有可能在您提到的位置查找。我會檢查一下並看看。 – David 2010-08-13 08:55:51
我現在有另一個錯誤,哈哈!我認爲這意味着你的建議奏效了。你已經回答了我的問題,但這是我無法接受的解決方法,因此我將考慮其他配置選項。 – David 2010-08-13 09:24:10
我通過將windsor配置文件的位置傳遞給XmlInterpreter的構造函數(請參閱代碼)來解決此問題。 – David 2011-06-30 12:12:53