如何打包和部署ASP.NET Web应用程序

时间:2019-05-23 10:12:13

标签: asp.net visual-studio jenkins deployment msbuild

我目前正在致力于自动化在Visual Studio中使用vb.net开发的asp.net Web应用程序的构建和部署。当前,开发人员正在使用Visual Studio IDE构建解决方案和项目。在解决方案中,他们为每个环境(例如:app.setup.dev,app.setup.uat,app.setup.prof)都有部署/设置项目(vdproj),该项目将为部署创建msi,并嵌入web.config在上面。

我们将github用于scm,将jenkins用于build / CI,将udeploy用于部署。

我能够通过jenkins使用msbuild cli构建解决方案。但是,无法使用msbuild构建vdproj。另外,我在生成服务器中安装了Visual Studio和MS VS安装程序项目扩展,然后使用devenv生成vdproj。我不确定这是否是正确的方法,也许只是解决方法。

打包部署工件(内容文件,dll,web.config)并进行部署的适当方法是什么?如何?如果除了创建MSI之外,还有另一种方法可以实现,那就太好了,因为我不必在构建服务器中获得Visual Studio的许可证。

1 个答案:

答案 0 :(得分:0)

  

我目前正在致力于自动化构建和部署   在可视化中使用vb.net开发的asp.net Web应用程序   工作室。

也许您可以尝试通过msbuild命令行发布asp.net网络应用。

1。据我所知,我们可以通过Visual Studio构建和部署,请参见this document

2。并且,如果没有VS,您可以通过msbuild命令行进行构建和部署(发布?),有关此主题的资源很多。

请参阅:

How to deploy an ASP.NET MVC application on build using MSBuild in Visual Studio 2015?

How to build and deploy a web deployment package using MSBuild

Using MSBuild.exe to “Publish” a ASP.NET MVC 4 project with the cmd line

通过这种方式,您可以通过指定参数来获得类似的功能,而无需在服务器中安装VS。

  

什么是打包部署工件的适当方法   (内容文件,dll,web.config)并部署它们?

是否必须将它们打包为.msi或.zip,然后将其发布。如果没有,那么简单的msbuild命令就可以了:msbuild xxx.sln /p:WebPublishMethod=xxx /p:PublishProfile=xxx

不确定是否是您想要的,希望对您有所帮助。