2010-07-01 70 views
1

我正在使用visual studio 2010.我有一个网站项目,我希望在每次构建项目时构建一个网站部署包。基本上我正在寻找一个后构建MSBuild命令的例子,它基本上和网站的右键菜单中的“Build Deployment Package”选项一样。构建网站部署包作为后构建事件

+0

真的,我们要做的是将2个网站项目和2个databaseGeneration项目的输出打包到一个文件夹中。也许有更好的方法来做到这一点。 结构
WEBSITE1
websiteDeployment
sqlScripts
WEBSITE2
websiteDeployment
sqlScripts
2010-07-01 15:53:11

回答

8

我假定您正在使用Web应用程序项目,因为Web站点项目没有“构建部署包”。

我会建议不要在每个版本上执行一个包,因为它会大幅减慢你的开发速度。有了这个说法,你可以在这里做到这一点。

如果你确实想要做到这一点,最好的办法不是使用后生成事件,而是编辑项目文件并扩展构建过程。要做到这一点打开的.csproj文件为您的网页,然后向底部(导入元素后)将下列

<PropertyGroup> 
    <BuildDependsOn> 
    $(BuildDependsOn); 
    Package 
    </BuildDependsOn> 
</PropertyGroup> 

这样做是扩展构建过程,调用目标。这与您在Visual Studio中调用“构建部署包”目标时调用的目标相同。

+1

这是行不通的。有一个涉及目标“Build”的循环依赖项。 (包调用构建,构建调用包...) – 2010-07-01 14:58:59

+1

@madgnome你有错误信息?我只是试过这个。 – 2010-07-01 15:48:07

+0

错误MSB4006:涉及目标“Build”的目标依赖关系图中存在循环依赖项。 – 2010-07-01 15:50:40