app.config文件是否为使用IIS的WCF服务web.config文件等Windows服务公开?

时间:2011-11-09 18:24:59

标签: wcf windows-services web-config app-config

我是创建Windows服务以托管WCF的新手,因为我一直在使用IIS来执行此操作。我创建了一个Windows服务来托管大约十几个WCF服务,并在Visual Studio中设置了一个app.config文件来处理每个服务的所有端点和地址。

文件系统上安装了哪些Windows服务?有没有办法重新配置配置文件来更改绑定/地址而无需卸载/重新安装服务?

我一直在使用已发布的web.config文件执行此操作,该文件存在于使用IIS的WCF服务的inetpub中,我想知道它是否与Windows服务相同。

2 个答案:

答案 0 :(得分:5)

标题问题的答案是肯定的。 Windows Services的app.config与web.config相同,是IIS托管的Web服务。

Windows服务通常作为常规可执行文件部署在产品特定路径中的特定位置。放置在此可执行文件旁边的app.config与附加 .config 的可执行文件具有相同的名称。因此,ScanService.exe旁边有一个包含其配置的ScanService.exe.config。

答案 1 :(得分:1)

Hans,我使用Windows服务开发/安装了我的分布式服务(.NET远程处理),在安装服务时需要指定文件夹。例如,您选择文件夹为" C:\ Program Files \ MyService"那么你的MyService.exe.config将安装在与" C:\ Program Files \ MyService"相同的文件夹中。

所以你可以找到" C:\ Program Files \ MyService.exe.config"并修改您的绑定,然后重新启动您的Windows服务。

您考虑的其他要点是

此处没有AppPool,因此您在安装服务时将使用的帐户将用于运行您的服务。如果您使用简单的域\帐户,则可能需要提供一些其他权限 如果您需要通过您的服务访问事件日志或注册表。

或者您可以在安装服务后稍后修改您的服务帐户。

您是否有任何特殊原因想要离开IIS?由于我的WCF服务也存在于IIS中,因此想知道您是否遇到任何问题。