Perhaps the single greatest improvement that .NET has made over previous generations of development environments, especially compared to classic ASP, is in the area of deployment, for the following reasons:
All of this will be described in this chapter. In the meantime, shout it from the rooftops: No more DLL hell! ASP.NET derives all this deployment bliss by virtue of being part of the .NET Framework. These deployment features are common to all applications developed under the .NET Framework. Understand that with all the different deployment scenarios, the fundamental requirement is that you are deploying the web application to a web server (or to servers in the case of a web farm,) which is running IIS, as described in the previous chapter. Even if you developed the app in VS2005 using a File System location on a machine without IIS installed, you must deploy to a virtual directory on a server running IIS if you want your site to be visible to other users. There are two broad categories of deployment: local and global. With local deployment , the entire application is self-contained within a virtual directory. All of the content and assemblies (described shortly) that make up the application are contained within the virtual directory and are available to this single application. With global deployment , assemblies are made available to every application running on the server. Within the category of local deployment, there are several scenarios available:
Finally, two different techniques are available for deployment: XCOPY and Microsoft Installer . Your choice of which method to use will be driven by the requirements of your situation. All of this will be described, with pros and cons of each, later in this chapter. First, we will digress a bit to discuss assemblies, which are fundamental to the whole issue of deployment. |