我有一个 WCF 项目,其中包含一个 .svc 文件和一些 .config 文件。我正在尝试在 TFS 2010 中创建一个构建定义,它将这些文件复制到另一台机器上的 IIS 文件夹中。
我使用构建 XAML 模板中的 CopyDirectory 任务对其他 MVC 项目进行了类似的操作。在这些文件中,我从 _PublishedWebsites 文件夹复制到 IIS 文件夹。但是,对于 WCF 项目,没有 _PublishedWebsites 文件夹。
因此,我尝试更新 WCF 项目的 MSBuild 脚本以创建 _PublishedWebsites 文件夹并将文件复制到其中。这在我在 Visual Studio 2010 中本地构建时有效。但是当它在 TFS 构建服务器上运行时,它并不完全有效。
我看到的是在“C:\Builds\1\PROJECT\PROJECT (Continuous Build)\Sources\PROJECT\bin\_PublishedWebsites”中,我可以看到所有文件。
我猜这个“1文件夹”是一个用于构建的临时文件夹......?我不确定它是用来做什么的。但是当我查看构建的实际放置位置时,在“C:\Builds\PROJECT (Continuous Build)\PROJECT_BUILDNUMBER\”中,除了日志文件,我什么也看不到。“1 文件夹”中的所有文件都不存在。
请注意,同样的解决方案也有一个 WiX 项目来创建部署包。这似乎构建得很好,并且毫无问题地显示在放置位置。