0

我基本上负责我的项目使用大量外部资源的 DLL。我想为我的项目创建一个名为 infrastructure.config 的配置文件,客户项目可以将其复制到他们的项目中,而无需剪切并粘贴到他们自己的应用程序或 Web 配置中。我尝试了以下建议:

在运行时更改默认 app.config

在我尝试使用使用自定义部分的 Log4Net 之前,该解决方案运行良好。当我尝试使用上述链接中的代码时,我收到了一个未知的配置部分。当我使用没有上述代码的相同配置文件时,它可以正常工作。有趣的是,当我尝试使用 TransactionScope 时它爆炸了。因此,在我的配置中使用 TransactionScope 和 configurationSections 的某种组合使其失败。有什么建议么?

我希望每个客户端应用程序或网站都有自己的值配置,而我的 infrsatucture.dll 应该能够组合自己的值、自定义 SOAP 绑定和 Log4Net。

4

1 回答 1

0

听起来像是依赖注入有利于解决问题。

我强烈建议不要创建依赖于配置文件(应用程序设置或部分)的应用程序/dll,而是让您的界面公开其工作所需的内容。这些可以是其他 DLL (log4net) 公开的外部类/接口,或者您可以创建自己的并允许其他开发人员根据您所需的抽象/接口类派生具体类。

于 2012-10-01T19:29:00.970 回答