我们正试图通过MSbuild部署web服务,然后使用MSDeploy将服务推送到IIS服务器。根据不同的环境,我们有单独的配置文件,这些文件需要根据它们所在的位置进行引用。问题是当包在另一个网站上创建时。。配置文件没有得到包。我试过使用
<CopyAllFilesToSingleFolderForPackageDependsOn>
CustomCollectFiles;
$(CopyAllFilesToSingleFolderForPackageDependsOn);
</CopyAllFilesToSingleFolderForPackageDependsOn>
与结合
<Target Name="CustomCollectFiles">
<ItemGroup>
<FilesForPackagingFromProject Include="*.config">
<DestinationRelativePath>%(Filename)%(Extension)</DestinationRelativePath>
<FilesForPackagingFromProject>
</ItemGroup>
</Target>
但它似乎没有把文件复制过来。是我做错了什么,还是我可以选择将这些文件转换为"变换文件"?
我正在使用XmlPreprocess工具来操作配置文件。我正在为多个环境使用一个映射文件。您可以通过Excel编辑映射文件。它很容易使用。
您可以使用Exec任务从MSBuild脚本中调用它。
愚蠢的我,我从来没有尝试过重命名文件。。。只要配置文件不是以WebMSBuild开头,它就会将文件复制到包中,并且不认为它是转换文件