.NET构建&部署

时间:2010-11-25 22:36:58

标签: c# asp.net deployment msbuild

要在干净的服务器上部署我的应用程序需要几个步骤:启动MSSQL服务,安装.NET4,部署代码,安装数据库架构,将SSL证书添加到IIS7 ......

此后我遵循一个更无聊的任务:压缩我的应用程序文件,将它们传输到服务器,将它们加载到Web应用程序文件夹等。

当我的产品销售给企业客户时,部署是在半频率的基础上完成的。此后,这是无聊的构建和部署任务。

是否有推荐的.NET工具可以帮助自动执行上述任务?顺便说一句,我使用VS2010与IIS7和.NET4。

3 个答案:

答案 0 :(得分:2)

Web Deploy

  

Web部署(Web部署工具)   简化了迁移,管理   和Web Web服务器的部署   应用程序和网站。   管理员可以使用命令行   使用Web Deploy编写脚本   同步IIS 6.0和IIS 7.0   服务器或迁移IIS 6.0   服务器到IIS 7.0。 Web部署工具   还使管理员和   委派用户使用IIS管理器   部署ASP.NET和PHP应用程序   IIS 7.0服务器。

     

Web Deploy使您可以打包   您的配置和内容   安装了Web应用程序,包括   数据库,并使用包   存储或重新部署。这些   可以使用IIS部署包   经理无需要求   行政特权。工具   与Visual Studio 2010集成   帮助开发人员简化   将Web应用程序部署到   网络服务器。该工具还集成了   使用Web平台安装程序   让您简单轻松地安装   社区Web应用程序。您可以   将您自己的应用程序提交到Web   应用程序库

     

功能

     

与IIS 7.0无缝集成   经理和Visual Studio 2010   用于创建包的接口和   将它们部署到机器上   本地和远程。无缝   与Web平台集成   安装程序以安装社区Web   应用简单轻松。卷筒纸   应用包装:能力   打包Web应用程序或整个   网站,包括相关的   数据库。能够打包ACL,   COM,GAC和注册表设置。   支持实时服务器和压缩   包作为源或目的地。   Web应用程序部署:   管理权限不是   部署Web所需的   应用。能够添加强大的功能   用于更改文件中文本的参数   当它们被部署时(例如   提示更换连接   从QA部署到的字符串   临时环境)。积分   使用IIS 7.0 Web管理   用于远程部署的服务(WMSVC)   由非管理员。服务器   管理员有细粒度控制   可以进行的操作   执行并可以将任务委派给   非管理员。网络服务器   迁移和同步:能力   同步或迁移整个   Web服务器,Web站点或应用程序。   仅同步具有的数据   改变。能够发现失踪   同步期间的依赖关系。   自动收集内容,IIS   配置,SSL证书和   同步时的ASP.NET配置   网站。除了IIS   经理和Visual Studio 10,任务   可以使用。来执行   命令行或公共API。

答案 1 :(得分:1)

是的,Powershell可以为您完成所有这些。几乎任何.NET程序都可以做,Powershell可以做到这一点,因为你可以导入.NET程序集并在powershell中使用它。

我在项目中使用powershell:

1)设置注册表

2)解压缩删除的代码

3)构建Web文件夹并移动文件

4)部署SQL存储过程

5)重启IIS

有关使用Powershell进行部署的深入审核,请参阅此处 article

答案 2 :(得分:1)

您是否考虑过使用Windows Installer创建MSI进行安装?

您可以使用InstallShield或Wix执行此操作,并且可以获得您为“免费”描述的大部分功能(例如,安装.net,启动/停止服务,部署代码等)。