从 .NET 中的类库项目引用设置的最佳做法



我的解决方案中有多个项目。我有一个项目专门用于保存许多WCF服务引用(它包含对WCF服务的引用,而不是WCF服务的实现(,让我们称这个项目为"GlobalWebServices"。然后,我有许多引用此GlobalWebServices项目的可执行应用程序。当我执行这些应用程序并尝试调用引用 Web 服务时,它们自然会丢失我要调用的 ServiceReferences 的配置详细信息。配置设置属于类库项目 - "全球网络服务"。

存储这些服务参考绑定详细信息的最佳方法是什么?我不想将每个复制到执行应用程序的 .config 文件中,因为它感觉不整洁,而且我正在复制信息。我不想在"GlobalWebServices"应用程序中对服务引用绑定进行硬编码,因为我已经为每个服务生成了绑定连接信息(嗯......Visual Studio已经为我做了这件事,但仍然如此(。理想情况下:我希望GlobalWebServices库在构建时自动将绑定信息(当前存储在它的app.config中(包含在类库中。

对此的最佳实践解决方案是什么?

您可以使用configSection分离web.config的不同部分。

可能有更好的答案,但我的第一个想法是将配置文件放在类库项目中。将配置文件的属性设置为"内容"和"如果较新则复制"。这将允许您将其放在一个位置进行源代码管理。不过,此选项的缺点是,一旦部署,它就会位于几个不同的位置,但如果使用配置文件的每个应用程序的配置需要不同,这也很好。

我知道可以通过编程方式配置服务,然后将配置写出到文件中。我想这意味着你可以走另一条路,有一个单独的XML文件,并从那里加载绑定等,而不是app.config本身。

最新更新