构建不在Visual Studio Team Services中发布Web API项目(VS Online)

时间:2016-02-01 15:45:01

标签: visual-studio-2013 tfs build tfsbuild azure-devops

我在Team Services上创建了VS构建定义。当我对它进行排队时,构建会成功运行,它还会为解决方案中的所有项目输出dll,但我使用Web Api2创建的服务层除外。

当我从放置位置下载工件时,我有文件夹,包含数据层,业务层和其他帮助程序项目的dll。我没有的是我可以部署到IIS的主服务层dll。

以下是我的发布设置的屏幕截图。

enter image description here

我能错过什么?

2 个答案:

答案 0 :(得分:11)

您似乎正在使用构建定义的默认设置。使用这些设置,“复制文件”任务的内容为“** \ bin \ $(BuildConfiguration)**”,而web api项目没有buildconfiguration文件夹。因此无法找到web api项目的文件。要复制这些文件,请再添加一个“复制文件”任务,并按如下方式配置设置: enter image description here

如果需要项目的部署文件,则需要按如下方式设置构建定义:

  1. /p:DeployOnBuild=true;OutDir="$(build.artifactstagingdirectory)"步骤添加参数Visual Studio Build
  2. 删除Copy Files步骤。
  3. $(build.artifactstagingdirectory)\\_PublishedWebsites步骤设置发布到Publish Build Artifacts的路径。
  4. 然后你应该在drop文件夹中获取部署文件。

答案 1 :(得分:-1)

在VisualStudio中打开配置管理器,确保包含WebAPI项目以用于您正在构建的配置(调试,发布等)。

enter image description here