在使用TeamCity部署代码之前清除Asp.net Bin文件夹

在使用TeamCity部署代码之前清除Asp.net Bin文件夹,asp.net,teamcity,web-deployment,octopus-deploy,Asp.net,Teamcity,Web Deployment,Octopus Deploy,我是TeamCity和八达通部署的新手 我的项目有许多分支使用不同版本的第三方DLL。我面临的问题是,当我在TeamCity切换分支并构建它部署的代码(使用Octopus Deploy)时,代码成功部署,但它没有清除目标文件夹 与Bin文件夹一样,Bin文件夹保存项目所需的所有dll,因此,当我切换分支并使用TeamCity构建和使用Octopus Deploy部署时,不会删除以前的dll,并且由于多个dll中存在相同的类,应用程序会显示以下错误 以下方法或属性之间的调用不明确 如何解决此问题?

我是TeamCity八达通部署的新手

我的项目有许多分支使用不同版本的第三方DLL。我面临的问题是,当我在TeamCity切换分支并构建它部署的代码(使用Octopus Deploy)时,代码成功部署,但它没有清除目标文件夹

与Bin文件夹一样,Bin文件夹保存项目所需的所有dll,因此,当我切换分支并使用TeamCity构建和使用Octopus Deploy部署时,不会删除以前的dll,并且由于多个dll中存在相同的类,应用程序会显示以下错误

以下方法或属性之间的调用不明确


如何解决此问题?

有几种方法可以解决此问题。这实际上取决于您如何将代码从TeamCity版本化和部署到Octopus。如果您正在使用NuGet pacakges并为每个包提供一个版本,那么让Octopus根据新的包版本触发部署,您将为每个部署创建一个新的目录,而您根本不会遇到这个问题。也就是说,这里有几种方法可以在您当前的工作流程中解决这个问题

  • 使用Powershell脚本作为部署的第一步,并让该脚本清理部署目录
  • 使用“自定义安装目录”并设置“安装前清除此目录”标志
  • 要启用“自定义安装目录”,请单击部署步骤底部的“启用功能”,然后选中“自定义安装目录”

    然后配置目录路径并选中“安装前清除此目录”选项。