WCF:IIS上托管的一个项目中有多个服务,但是权限不同?

| 我有一个现有的应用程序,需要将其部分内容提供给外界,并为不同的客户提供不同的服务。 确切地说,它已经与一个WCF服务一起运行,现在我需要添加第二个与第一个服务完全无关的服务,以供完全不同的客户端使用。 创建现有服务时,我向现有解决方案中添加了WCF服务项目,然后创建了一个新的“ WCF服务”并进行了编辑。 因此,在Visual Studio中,文件夹布局如下所示:
\\MyServiceProject\\IMyFirstService.cs
\\MyServiceProject\\MyFirstService.cs
\\MyServiceProject\\MyFirstService.csproj
\\MyServiceProject\\MyFirstService.svc
\\MyServiceProject\\Web.config
我们有一个编译脚本来编译内容并复制文件,然后IIS上的已发布文件夹如下所示:
\\MyFirstService\\bin\\MyServiceProject.dll
\\MyFirstService\\MyFirstService.svc
\\MyFirstService\\Web.config
(如果我没记错的话,它仅在DLL位于名为\“ bin \”的子文件夹中时才有效,因此在构建脚本中进行复制) 现在,我想添加另一个.svc文件。 我宁愿避免创建第二个WCF服务项目...我想将新服务添加到现有项目中。 但是:第二个服务需要具有与第一个服务不同的权限(受限制的外部访问权限,但是对不同的客户端...)。 根据我们的管理员,我必须将第二个服务放在另一个文件夹中,以便我们可以赋予它不同的权限。 因此,已部署的服务必须如下所示:
\\MyFirstService\\MyFirstService.svc
\\MySecondService\\MySecondService.svc
但这也意味着其他文件将必须重复:
\\MyFirstService\\bin\\MyServiceProject.dll
\\MyFirstService\\Web.config
\\MySecondService\\bin\\MyServiceProject.dll
\\MySecondService\\Web.config
我不在乎复制MyServiceProject.dll,但是Web.config呢? Visual Studio中只有一个,如果要在调试模式下运行服务,则必须将两个服务都添加到其中。 还是我可以以某种方式拆分web.config,以便它在Visual Studio中工作(两个服务都在同一文件夹中)并部署在IIS(每个服务都有其自己的文件夹)上? 任何想法如何解决这个问题? 还是我做错了什么? WCF的这些东西对我来说都是全新的,到目前为止,我所做的一切都在Google的帮助下被黑了……     
已邀请:
您可以使用本文- ASP.NET配置文件的层次结构和继承 在IIS中设置web.config层次结构。 将这两个服务放在一个子目录中,该子目录将包含共享web.config的相同根应用程序。     

要回复问题请先登录注册