2011-11-03 102 views
0

我一直在使用已经部署到具有IIS的各种计算机的大约12个WCF服务。所有绑定/配置都保存在通常的“web.config”文件中,该文件是为了保持服务更加可配置并保持服务代码本身更加清洁而创建的。不过,我最近刚刚负责创建一个Windows服务来承载这些WCF服务。我拥有的一个问题是,我只是将web.config文件中的所有设置复制到Windows服务的App.config文件中?或者我需要重新配置所有的端点/绑定/等。在App.config文件中使用不同的格式?我以前从未创建过Windows服务,但在创建Windows服务主机后,并未100%确定需要进行安装。提前致谢。将WCF服务Web.config移植到Windows服务App.config

回答

1

web.config中的WCF配置元素应直接转换为app.config。过去我剪切和粘贴了web.config元素。唯一需要注意的是web.config和app.config都不像某些元素重复,所以如果你要合并来自多个web.config文件的配置数据,你必须确保你不重复段那应该只存在一次。

1

我一直认为.NET配置模型不适合WCF服务配置。

有一种方法可以教WCF从替代位置检索其配置。我喜欢设置它以便WCF服务从ServiceName.config而不是web.configAppName.exe.config检索其配置信息。这解决了哈珀谢尔比提到的重复元素的问题。

Here's a full explanation and some code.

使用定制服务主机,移动从IIS的WCF服务的自托管模式是非常简单的。

另请参阅,WCF Configuration - Split it out of app.config