代码之家  ›  专栏  ›  技术社区  ›  David

.NET-用类库存储app.config

  •  3
  • David  · 技术社区  · 15 年前

    这似乎在互联网上被要求很多,但到目前为止,我的研究还没有产生一个解决方案。(至少现在,我还没有接受“不能做”作为解决方案。)

    最简单的描述是,我要做的是在.NET类库项目中有一个配置文件,在引用它的任何应用程序中,该类库都可以使用该文件。我的设置可以简化为3个共享某些域逻辑的WCF服务。他们共享的一件事是注入了一个记录器的依赖关系。在本例中,我有一个单独的库,它使用log4net实现记录器(这个库是注入的)。

    在这个设置中,3个服务中的每一个都有自己的配置文件,并且每个配置文件都需要配置log4net。我要做的是将log4net完全抽象到单独的库中,这样这3个服务(以及将来的服务/应用程序,其中将有许多)就不必进行这种配置。它们都将以相同的方式配置,所以我希望它在一个地方。

    到目前为止,我已经找到了一些代码,这些代码将允许应用程序集(键/值对)的库本地化配置文件,并且我可以访问它。但我正在寻找一种更完整的配置文件方法。log4net有一个自定义配置部分,该部分超过了键/值对。(其他配置部分也将在多个应用程序之间使用,例如客户端应用程序用于连接到WCF服务的公共库中的System.ServiceModel部分)。

    这有道理吗?以前有人想出解决这类问题的办法吗?

    1 回复  |  直到 15 年前
        1
  •  2
  •   Hans Olsson    15 年前

    在类库中不能使用与可执行文件相同的.config文件!但是,类库当然可以读写XML文件,这样您就可以在一定程度上伪造它。 This 代码项目文章描述了一种方法,如果有其他类似的解决方案,我不会感到惊讶,因为正如您所说,这是一个常见的问题。