欢迎光临
我们一直在努力

部署ASP.NET的三大技术(上) (2)-.NET教程,Asp.Net开发

建站超值云服务器,限时71元/月

五、用vs.net的“复制项目”功能部署

vs.net的“复制项目”功能使我们能够非常轻松地把asp.net web应用部署到目标服务器。这个功能既可以把web项目复制到同一服务器,也可以复制到不同的服务器。

如果你用vs.net开发web应用程序,发布web应用之前要做的第一件事情是把“活动的解决方案配置”从debug改成release,如图三所示,这个选项不仅使编译器优化代码,而且删除所有与调试有关的符号信息,使代码运行速度更快。打开配置管理器的步骤是:在“解决方案资源管理器”中选择web应用项目,选择菜单“项目”→“xxxx项目属性”,其中xxxx是项目名称,再点击“配置管理器”。在“活动的解决方案配置”中选择“release”。

部署ASP.NET的三大技术(上) (2)-.NET教程,Asp.Net开发

图三

要把web项目复制到目标服务器,在vs.net中选择菜单“项目”→“复制项目…”,vs.net显示出图四的对话框。

部署ASP.NET的三大技术(上) (2)-.NET教程,Asp.Net开发

图四

“复制项目”对话框提供了下列选项:

㈠ 目标项目文件夹:用来指定复制项目的目标位置。目标位置可以在同一个服务器上,也可以在一个远程服务器上。

㈡ web访问方法:将web项目复制到目标文件夹时所用的方法,可供选择的web访问方法有两种。首先是“文件共享”,即通过文件共享机制直接访问web服务器上的文件系统,不要求web服务器上安装有frontpage服务器扩展;其次是“frontpage”,即通过基于http协议的frontpage服务器扩展把web项目的文件传输到服务器,使用该选项要求web服务器上必须安装了frontpage服务器扩展,这种web访问方法能够在目标服务器上自动创建必要的虚拟目录。

㈢ 复制:包含三个选项,分别是:① 仅限于运行该应用程序所需的文件,即只复制“生成”功能输出的文件(bin文件夹中的 dll 和引用)以及内容文件(例如.aspx和.asmx文件),大多数情况下,我们可以用该默认选项部署应用程序;② 所有项目文件,即复制“生成”功能输出的文件(bin文件夹中的dll和引用)和项目中的所有文件,包括项目文件和源程序文件,③ 源项目文件夹中的所有文件,即项目文件夹(或子文件夹)中的所有项目文件和任何其他文件。

根据实际情况选择图四对话框的选项,点击“确定”,即可把web项目部署到服务器。

六、用web安装项目部署

xcopy部署和vs.net的“复制功能”简单易用,但不能够满足所有的部署需要。例如,如果应用程序有更加复杂的配置和部署要求,vs.net的“web安装项目”才是最佳的选择。

虽然我们可以用一大堆的生成输出、安装类、数据库创建脚本来发布web应用,但对于复杂的web应用项目,通常不如使用windows安装程序来得方便。为支持web应用部署,vs.net专门提供了一种“web安装项目”。web安装项目与普通的安装项目不同,web安装项目把web应用安装到web服务器的虚拟根文件夹上,而普通安装项目一般把应用程序安装到program files目录。

由于vs.net安装程序建立在windows安装程序的基础上,所以能够利用windows安装程序的优势。在开始探讨vs.net web安装项目之前,我们先来了解一下windows安装程序的主要特点,因为它是vs.net web安装项目的核心基础。

6.1 windows安装程序

windows安装程序是一个软件安装和配置服务,windows 2000和windows xp操作系统都带有windows安装程序,而且微软为所有win 9x和nt 4平台也提供了功能相似的免费版本。在win2k/xp中,windows安装程序的核心是一个windows installer服务,windows installer服务记录了它安装的每一个应用程序,当我们删除一个应用软件时,windows installer检查安装记录,在删除应用的组件之前确保其他应用不依赖于这些组件。

windows installer将应用划分成以下三个等级:

⑴ 产品:用户可以安装的一个单元。例如,ms word就是一个用户可以安装的产品。

⑵ 功能:产品由多种功能组成,功能是产品用途的最小单位。例如,自动更正就是word的一项功能。

⑶ 组件:组件可以看作能够在多个功能和组件之间共享的最小单元。必须注意的是,windows installer术语中的组件不同于.net框架中组件的概念。一个windows installer的组件是一个或者多个逻辑上密切相关的文件,它可以是一个执行文件,一个dll文件,也可以是一个简单的文本文件。一项功能可以由多个组件结合在一起提供,同时,一个组件也可以由多项功能共享。功能总是针对特定的产品而言,且功能的名称只在特定的产品范围内唯一;相比之下,组件是全局性的,其作用范围是一台机器上安装的所有产品。例如,word的拼写检查组件可以在所有想要实现拼写检查功能的组件之间共享。

与产品有关的信息,包括功能、组件的描述等,都在一个安装数据库中集中保存。安装数据库其实只是一个带.msi扩展名的文件,它不仅包含了产品的功能、组件的信息,而且还定义了安装产品期间各个用户界面的显示次序。由于windows installer注册成了.msi文件的服务程序,当用户打开.msi文件时,操作系统会自动调用windows installer。按照这种方式启动windows installer时,installer从安装数据库读取产品信息,判断该产品是否已经安装。如果尚未安装,installer按照安装数据库的描述开始安装操作;如果产品已经安装,可能执行其他处理,例如添加/删除某项功能,或者卸载整个产品。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 部署ASP.NET的三大技术(上) (2)-.NET教程,Asp.Net开发
分享到: 更多 (0)

相关推荐

  • 暂无文章