这似乎在互联网上被问了很多,但到目前为止我的研究还没有产生解决方案。(而且,至少目前,我还没有接受“无法做到”作为解决方案。)
在最简单的描述中,我想做的是在 .NET 类库项目中拥有一个配置文件,该配置文件可用于任何引用它的应用程序中的类库。我的设置可以简化为共享一些域逻辑的 3 个 WCF 服务。他们共享的一件事是记录器的注入依赖项。在这种情况下,我有一个单独的库,它使用 log4net 实现记录器(这个库是被注入的)。
在此设置中,3 个服务中的每一个都有自己的配置文件,并且每个配置文件都需要配置 log4net。我正在尝试做的是将 log4net 完全抽象到单独的库中,这样这 3 个服务(以及未来的服务/应用程序,其中会有很多)不必携带该配置。它们都将以相同的方式配置,所以我宁愿它在一个地方。
到目前为止,我已经设法找到一些代码,这些代码将允许应用程序设置(键/值对)的库本地化配置文件,我可以访问它。但我正在寻找更完整的配置文件方法。Log4net 有一个自定义配置部分,它不仅仅是键/值对。(其他配置部分也将用于多个应用程序,例如客户端应用程序用于连接到 WCF 服务的公共库中的 system.serviceModel 部分)。
这有意义吗?有没有人想出解决这种事情的方法?