带有服务引用的DLL应该读取自定义配置文件

时间:2010-01-05 11:22:48

标签: c#

我在使用带有服务引用的dll时遇到问题,应该读取自定义配置文件。

我的情况如下: - 读取自己的配置文件的DLL(通过使用configurationManager.openExeConfiguration(dllname.dll.config)) - 使用DLL(3d-party应用程序)的主要应用程序

这个工作正常,dll读取正确的配置设置。

现在我必须为我的DLL添加服务引用。问题是它试图读取标准的app.config文件(不存在),而不是读取dllname.dll.config文件。

任何人都有解决方案吗?

谢谢,

2 个答案:

答案 0 :(得分:2)

在.NET中,图书馆从来没有打算拥有自己的.config文件,因此没有官方支持,很多问题肯定会比比皆是。

虽然您可以使用ConfigurationManager.OpenExeConfiguration读取此类文件,但这绝不是该API的意图 - 它主要是提供用于编辑应用程序.config文件的API。

如果您使用标准ConfigurationManager API让库从app.config文件中读取,那将会更好。您仍然可以在app.config文件中拥有库的自定义部分。这是它总是打算工作的方式,它会给你带来更少的麻烦。

答案 1 :(得分:0)

不要复活一个旧问题,但由于没有答案,我会报复。

最近在配置部分播放时,我浏览了几个很棒的资源。通过基本上继承自ServiceHost / etc,可以了解clients and servers read custom configs的详细信息。并覆盖加载配置的方法。

现在,我同意Mark,我总是有例外和情况,这种方法可以提供额外的灵活性。我只是觉得有必要传递这篇文章,希望你也会感激它。