MSBuild Web服务包部署与单独的web.config文件

时间:2012-02-28 19:37:13

标签: web-services msbuild msdeploy

我们正在尝试通过MSbuild部署Web服务,然后使用MSDeploy将服务推送到IIS服务器。基于不同的环境,我们有单独的配置文件,需要根据它们驻留的位置进行引用。问题是当创建包时,其他web..config文件没有得到包。我尝试过使用

<CopyAllFilesToSingleFolderForPackageDependsOn>
 CustomCollectFiles;
 $(CopyAllFilesToSingleFolderForPackageDependsOn);
 </CopyAllFilesToSingleFolderForPackageDependsOn>

结合

<Target Name="CustomCollectFiles">
 <ItemGroup>
  <FilesForPackagingFromProject Include="*.config">
     <DestinationRelativePath>%(Filename)%(Extension)</DestinationRelativePath>
   <FilesForPackagingFromProject>
  </ItemGroup>
</Target> 

但它似乎没有复制文件。我做错了什么,或者我可以将它们转换为转换文件吗?

2 个答案:

答案 0 :(得分:0)

我正在使用XmlPreprocess tool进行配置文件操作。我正在为多个环境使用一个映射文件。您可以通过Excel编辑映射文件。它非常易于使用。

您可以使用Exec任务从MSBuild脚本中调用它。

答案 1 :(得分:0)

愚蠢的我,我从未尝试过只重命名文件...只要配置文件不以Web MSBuild开头就将文件复制到包中并且不假设它是一个转换文件