Deployment Video Highlights

  • FTP and WebDAV support
  • Secured communication via SSL
  • Inherent support for a test environment as well as production
  • Using the Publish Website tool to prevent source code from being deployed
  • Convenient installable MSI files for projects

Evaluate Visual Studio

Introduction

Deploying Web sites has historically been a simple matter of copying the appropriate files from the development machine into testing, or from a testing machine into production. This type of transfer usually occurred independent of the IDE. Things are changing in that now once the code has been developed, you can easily have the IDE move it to the testing server, or even production if your workflow skips the use of a testing environment. Both Visual Studio 2005 and Dreamweaver 8 have features to deploy the projects, making installation deployment and change management easier and faster.

Dreamweaver Section

Dreamweaver allows each Web site to have both a testing and a remote server specified. Each also has a communication type specified. By referencing the Manage Sites tool and clicking to Edit a site, you can use the "Testing Server" and "Remote Info" selections to configure how the project should be deployed. First you specify the kind of communication protocol from the Access drop-down. Then, depending on the choice made, there are different options for authentication and features. There is increased support for WebDAV, a standard that allows you to write directly to an HTTP server instead of using FTP. WebDAV in Dreamweaver 8 supports digest authentication and SSL for secure file transfer and offers improved connectivity to a wider array of servers. In this case, we will use the FTP protocol to send our site to a server located on the Internet. After specifying connection credentials, you can test to insure connectivity. The files are put into the subdirectory specified by the "Host Directory" folder name. Options available from the "Firewall Settings" button allow you to specify a proxy server or router, and a TCP/IP port number to use when attempting the FTP connection. By choosing "Enable check in and check out", some additional options then appear, one of which must be specified. The "Check Out Name" has to be filled in, and will be used for Dreamweaver’s built-in collaboration mechanism to indicate who exactly has each file checked out. An email address can also optionally be specified.

When the site has Remote Info configured, you can view files on the testing server, or on production. From these views, you can get and put individual files between the local files and these environments, or act on the whole site. When a transfer is in progress, this operates in a different thread so that you continue working in different areas of the application. This is very nice for Web sites when deployment will take awhile to complete. The Synchronize feature acts on newer files, and keeps track of what is newer by using an XML file maintained in the same folder that holds design notes. You can push out the newer files, retrieve the newer files from the server, or go both directions freshening files. A preview option lets you see the changes that will occur before you start the transfer. With .NET since you only have to deploy the compiled assembly and not the actual source code, the perfect thing to do is cloak Visual Basic source code file. To specify that all .VB files not be deployed, use the Cloaking option found in the site configuration. Local and remote files can be compared by using a third-party tool. If one has not been specified yet, then you are prompted to browse for one. The check in and check out features promote better collaboration between team members. This was described in a previous video. Dreamweaver offers a file-by-file deployment, but not the ability to create installation packages such as MSI files to deploy Web sites on servers.

Visual Studio 2005 Section

Visual Studio 2005 allows you to open and deploy Web sites with several different methods. First, the traditional Microsoft IIS (Internet Information Services) applications in the IIS root on local and remote computers which also supports virtual roots. Second, opening Web sites by using FTP (or File Transfer Protocol), and last, simply using the file system for stand-alone files. When the project is ready to be deployed, by referencing the Build menu and selecting "Publish Website," a Web project can easily be deployed to an FTP server. This deployment will synchronize your local and remote files, including copying new or changed files or removing old files that are no longer a part of your project. Source code and debugging database (.PDB) files will not be published, better maintaining security of the business logic used in the application. Once published, all assemblies and supporting files are in place, the Web site is functional

Another way to deploy files is using the Copy Website Tool. This is available on the Website menu, or on the context menu of the Web project. Once connected, the tool shows the local and remote files and allows you to synchronize individual files or the entire site. Conflicts are mitigated by asking if the local or remote version of a file should be the one that is copied.

Another option for deployment is to create an installable MSI file. This is accomplished by adding a new project to the solution by selecting from the File Menu \ Add \ New Project. Under the Other Project Types listed, there is Setup and Deployment. In the list of templates is the Web Setup Project. This kind of project builds an MSI file that gives a flexible way for an end user to install the Web application on one of their servers. The project includes the Web Application Folder to be configured on the Target machine along with its bin folder. Output from these projects can be placed in these folders. Special folders can also be added to configure shortcuts in the Start menu or other installation features. With the use of custom actions, it can also configure additional virtual directories and work with databases during the installation. New features included in this setup and deployment project allow you to differentiate between per user or per machine installations, offer support for 64-bit deployment, and deploy to Web servers that host multiple Web sites.

A huge benefit of using MSI files is that the uninstall is automatically available for the end user performing the installation. This makes installing and uninstalling versions of your Web site very easy.

Conclusion

This concludes our comparison of Dreamweaver 8 and Visual Studio 2005 with the Web site deployment options.