As a web developer with many sites, it quickly became a major time consuming problem to keep them all updated with the latest code. Visual Studio has never had a good solution for deploying the necessary files (and only the necessary files) directly to a web server.
Sure, they provide a feeble attempt at an FTP synchronization tool, but this tool has never really proved to be anything more than an integrated FTP client, leaving the developer to manually upload the files that need to be uploaded, updating configuration files for the remote server, and most importantly, ensuring that nothing gets overwritten that shouldn't be.
It can be very frustrating to update a medium-sized (or larger) application only to find that you missed one file and a large part of the site is no longer working!
For a long time I always wondered, "surely someone else has already solved this problem". Surely some web developer has gotten frustrated about Visual Studio's lack of direct deployment capabilities and created a solution??!
Just about the time I was seriously considering taking some time out to create a solution to solve my woes, I run across Dispatch for ASP.NET. I don't know where you've been all my life Dispatch, but thank you for saving me!
Dispatch was obviously exactly that, a tool by another small web developer that finally got tired of waiting for Microsoft to provide a solution for direct deployment. Dispatch is almost everything I could ask for in a deployment solution. First of all, it plugs right into the Visual Studio interface with a tab so appropriately labeled 'Dispatch'. After setting up your FTP settings, you see a tree structure similar to the Solution Explorer. Simply check the files you want Dispatch to synchronize. Quietly in the background, Dispatch will constantly monitor and determine which files actually need updating! Click one button, and all files are synchronized with the server.
In my case, I have one single project that contains the code for all of my sites. Most of the sites use the same base code, and only the code specific to the current site is off in a separate folder. Dispatch solves this for me by providing 'Modes'. Modes are basically named configurations. So I can create a mode for each site, which deploys all of the same base code, but only the custom code for that particular site. Just choose the site name from a combo box and the appropriate files will be synchronized to the server for that site and only that site! Unfortunately, the ignore filters are not affected by the mode, so I need to re-sync with the server every time I switch modes, but it's a small hassle.
I could really go on and on about this handy tool. Oh, did I mention the excellent price? I expected this tool to cost at least ten times what it does.
OK, maybe I'm gushing a little, but I assure you, this review is *NOT* sponsored in any way. It's simply my honest and grateful review of a product that is saving me countless hours. Hopefully another frustrated ASP.NET developer will run across this and it will save them huge amounts of time as well. Dispatch offers a 30 day free trial, so if you have ASP.NET websites and your not in a big corporate development environment with 12 hour build times and expensive build automation tools, Dispatch is probably something that will save you a few headaches as well! Check it out here.