我有像这样初始化的WCF客户端
MyServiceClient client = new MyServiceClient();
所以它使用app.config来读取endPoints。 我想动态地将默认配置文件更改为我定义的文件。 我知道我可以打开这样的配置文件:
Configuration myConfig = ConfigurationManager.OpenExeConfiguration
但如何设置myConfig
来替换默认配置?
答案 0 :(得分:4)
点击此处查看此文章:Read WCF Configuration from a Custom Location。
它主要涉及创建一个自定义ServiceHost,它将从您可以指定的其他文件中读取配置,而不是从web.config或app.config中读取。
这是另一篇关于在IIS中托管的WCF服务使用自定义配置文件的优秀文章: http://blogs.msdn.com/dotnetinterop/archive/2008/09/22/custom-service-config-file-for-a-wcf-service-hosted-in-iis.aspx
马克
答案 1 :(得分:1)
通过从自定义配置文件中读取值(我刚刚打开并使用标准XML解析器读取),我看到了类似的操作。然后,这些值以编程方式插入到WCF配置条目中。
这是因为同一解决方案中的多个项目都从同一个文件中读取了它们的WCF配置条目。我不确定他们为什么选择这种架构,但最终它的工作正常。