Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2012 如何在VS2012解决方案文件中构建多个web部署包_Visual Studio 2012_Deployment_Msbuild_Webdeploy - Fatal编程技术网

Visual studio 2012 如何在VS2012解决方案文件中构建多个web部署包

Visual studio 2012 如何在VS2012解决方案文件中构建多个web部署包,visual-studio-2012,deployment,msbuild,webdeploy,Visual Studio 2012,Deployment,Msbuild,Webdeploy,我可以找到很多从项目文件构建单个web部署包的示例,但我希望在自动化构建环境中使用相同的技术。当我尝试将该参数指定为msbuild参数时,结果是在/obj目录中创建了包。我想将输出位置指定为一个文件夹,在该文件夹中创建解决方案中的所有项目文件,但由于某些原因,这不起作用?我刚刚根据Sayed Ibrahim Hashimi的一篇文章得出这一结论,我采用了如下所述的方法 <PropertyGroup> <DeployOnBuild Condition=" '$(Build

我可以找到很多从项目文件构建单个web部署包的示例,但我希望在自动化构建环境中使用相同的技术。当我尝试将该参数指定为msbuild参数时,结果是在/obj目录中创建了包。我想将输出位置指定为一个文件夹,在该文件夹中创建解决方案中的所有项目文件,但由于某些原因,这不起作用?

我刚刚根据Sayed Ibrahim Hashimi的一篇文章得出这一结论,我采用了如下所述的方法

  <PropertyGroup>
  <DeployOnBuild Condition=" '$(BuildPackages)'!='' ">$(BuildPackages)</DeployOnBuild>
  <DesktopBuildPackageLocation Condition=" '$(BuildPackages)'!='' ">$(DeployPackageLocation)\$(AssemblyName)\$(AssemblyName).zip</DesktopBuildPackageLocation>
</PropertyGroup>

$(构建包)
$(DeployPackageLocation)\$(AssemblyName)\$(AssemblyName).zip
基本上,添加BuildPackages和DeployPackageLocation意味着部署包的根位置可以由解决方案/全局参数和构建级别开关控制,如下所示

> MSBUILD <SolutionPath>.sln /P:Configuration=Release /P:Platform="Any CPU" /P:BuildPackages=true /P:DeployPackageLocation="<YourOutputLocation>"
>MSBUILD.sln/P:Configuration=Release/P:Platform=“任何CPU”/P:BuildPackages=true/P:DeployPackageLocation=“”

我的博客上有更多详细信息

你能添加到Sayed和你的博客帖子的链接吗