在完成所有的艰苦工作之后,将你的应用程序进行部署从而形成产品的时刻最终来临了。.NET框架提供了很多部署方案供选择,而决定使用哪种常常要取决于你应用程序的环境。例如,你部署一个Windows窗体应用程序的方式,同你部署ASP.NET或者基于Windows服务的应用程序的方式可能会有所不同。现在让我们来看看一些可供选择的部署方案。
开发全功能的应用程序的一个常见问题是开发人员所拥有的动力。其中的一个例子是,很多开发人员常常都是骨灰级的计算机用户,他们总喜欢给自己的计算机装备上最新的科技。这常常就会导致用户群的目标平台和开发人员平台之间的巨大差距。由于这个原因,很多开发商通常会安装一台能够模拟出目标平台的计算机;但是,这常常无法做到的。所以开发人员应该要熟悉目标平台,以确保应用程序的性能不会打折。
.NET开发的另一个难题是要求目标计算机上必须安装有所需的.NET框架。如果不存在(或者如果所需要的版本无法使用),那么应用程序的安装者就必须准备安装.NET框架。应用程序的类型决定了.NET框架必须被安装在哪里。
除了.NET框架,要让它正确运行可能还需要应用程序之外的其他资源。一个很典型的例子是.NET的数据访问应用程序块(Data Access Application Block),它让你能够轻松地和SQL服务器进行交互操作,而只需要最小的精力。另一个例子是操作数据库,例如Oracle或者MySQL,这可能需要另一个数据提供者。尽管这些资源可能是必要的,但是应用程序的支柱则是.NET框架。
.NET框架要用来自MSDN网站的一个可重新分配程序包来部署。此外,它还被包括在.NET的SDK和Visual Studio .NET安装光盘里。其命令行选项包括下面这两个:
下面的命令会在安装框架的同时不显示所有的消息:
dotnetfx.exe /c:a
关于命令行要提醒注意的是,进行安装的人必须拥有目标计算机上管理员的权限。除了直接的命令行选项,.NET框架也可以用下面的方法之一来安装:
尽管.NET框架可以单独安装,但是它也可以和应用程序一起安装。
你可能不想费神把.NET框架的安装过程同应用程序的安装过程分离出来。此外,你可能无法控制目标环境,所以,有的计算机可能安装有.NET框架,而其他的可能没有。在这种情况下,你也许只想在必要的时候才安装.NET运行环境。
如果使用微软的Visual Studio .NET,那么在安装应用程序的时候自动地进行.NET框架的安装会很简单。这要通过在Visual Studio里创建新的“安装工程(Setup Project)”来实现,后者要在“新工程(New Project)”对话框的“安装和部署工程(Setup And Deployment Projects)”选项里选择。可能还要给“安装工程”加上依赖性,以确定.NET框架是否存在,并在不存在的时候安装它。这是通过在“查看”下拉菜单里添加启动条件来完成的。
对于那些没有使用Visual Studio .NET的开发人员来说,他们可以使用xcopy选项(以及第三方的解决方案)。这一选项会把文件复制到用户的计算机里,所以.NET框架的可重新分配程序包也可以被复制。你可以使用一个批处理文件来进行xcopy操作并进行.NET框架的安装。这种方法会跳过Windows系统,所以被安装的任何应用程序都不会出现在“添加删除程序(Add/Remove programs)”的窗口里。同样的,组件(COM/COM+)的注册也是无法选择的。
删除使用.NET框架的应用程序应该小心。应该使用“添加/删除程序”窗,以确保.NET框架不会被意外删除,从而影响到其他的.NET应用程序。
应用程序开发的最后一个阶段是将它部署成为产品(在用户要求新的特性之前)。.NET框架提供了很多选择,供你安装应用程序并设置.NET的运行环境。其结果就是一个对用户和开发人员都友好的无缝安装。
本位作者:Tony Patton的职业生涯开始于应用程序开发员,并已经获得了Java、VB、Lotus和XML的认证,以增加其专业知识。