我们有一个场景,我们在连接到同一数据库的同一台服务器上托管多个WCF服务。但是目前他们都有自己独立的web.config文件。因此,每次对其他服务器进行一些更改或新部署时,都需要更改每个web.config。
我们是否可以在任何给定服务器上的所有服务之间共享一个配置(无论是在文件上还是在内存/数据库中)?如果是这样那会是什么?如果没有,为什么不呢?如果我们不应该采用这种方法,为什么不呢?
目前我们有这样的层次结构(文件夹结构)
Services
- Service1
- Service2
- ...
- ServiceN
注意:我对“程序员”也提出了同样的问题,但没有人回复。
答案 0 :(得分:0)
您正在寻找machine.config
文件。把它想象成web.config更大的兄弟。您可以将常用配置项放在machine.config中,该项将传播到IIS的所有子web.configs。如果您有任何冲突,您将不得不在Web服务的代码中删除它们,或者修改web.config以删除该值,然后再将其添加回本地。
答案 1 :(得分:0)
毕竟这是可能的。我做的是跟随,我改变了服务'在IIS中将文件夹包含为应用程序,并将常用的web.config放在该文件夹中。这需要删除每个Web服务的各个web.config文件。
Services (Convert as application)
- Service1
- Service2
- ...
- ServiceN
- web.config
现在,如果您需要某个服务来使用不同的配置文件或使用不同的值,只需将web.config放在该服务中即可。