[C#]DLL继承IConfigurationSectionHandler即可访问宿主的.exe.config

来源:互联网 发布:上下架查询软件 编辑:程序博客网 时间:2024/05/17 01:32

一般来说,只有Application才能够用自定义的IConfigurationSectionHandler接口类读取app.config中的配置。

只要两步:

第一步,在自己的应用中定义一个类:

public class ActionConfigurationSectionHandler : IConfigurationSectionHandler即可,并且
重载public object Create(object parent,
???object configContext,
???System.Xml.XmlNode section)方法。

然后,在app.config中像log4net一样:

??

???type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
?

注意,type属性填写自己的类的名字和命名空间。

但是,一般来说只有exe和Web页面才可以用这些默认的配置文件,对于一个自定义的DLL,只能自己写一个处理配置文件的类来指定用哪一个配置文件。

否则,这个DLL将重用调用它的那个EXE的配置文件,即用

ConfigurationSettings.GetConfig("ActionServlet/ActionsMap")

实际上访问的是EXE的配置文件SomeApp.exe.config。

?

我自己实现了一个DLL,有一个ActionConfigurationSectionHandler类,并且在SomeApp.exe.config中定义

????type="ActiveServlet.ActionConfigurationSectionHandler,ActiveServlet"/>

寄希望于能够用ConfigurationSettings.GetConfig("ActionsMap")

?



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=58895