我们正在尝试通过MSbuild部署Web服务,然后使用MSDeploy将服务推送到IIS服务器。基于不同的环境,我们有单独的配置文件,需要根据它们驻留的位置进行引用。问题是当创建包时,其他web..config文件没有得到包。我尝试过使用
<CopyAllFilesToSingleFolderForPackageDependsOn>
CustomCollectFiles;
$(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>
结合
<Target Name="CustomCollectFiles">
<ItemGroup>
<FilesForPackagingFromProject Include="*.config">
<DestinationRelativePath>%(Filename)%(Extension)</DestinationRelativePath>
<FilesForPackagingFromProject>
</ItemGroup>
</Target>
但它似乎没有复制文件。我做错了什么,或者我可以将它们转换为转换文件吗?
答案 0 :(得分:0)
我正在使用XmlPreprocess tool进行配置文件操作。我正在为多个环境使用一个映射文件。您可以通过Excel编辑映射文件。它非常易于使用。
您可以使用Exec任务从MSBuild脚本中调用它。
答案 1 :(得分:0)
愚蠢的我,我从未尝试过只重命名文件...只要配置文件不以Web MSBuild开头就将文件复制到包中并且不假设它是一个转换文件