I have a client that has an ASP.NET web application they sell to people that either in turn host it with our co开发者_如何学Gompany or elsewhere. The end result is that source code and database setup can be spread across multiple servers, so when we push updates, we have to push manually by copying over source code and then updating the databases as needed. Are there any good alternatives out there for doing this to multiple servers?
If you're using Visual Studio 2010, then you could consider the new Web Deployment Package technology. See ASP.NET Web Application Project Deployment Overview , which explains how you can also deploy IIS settings and even necessary databases as part of the deployment.
Have a look at the video on this page. It gives a decent introduction to MSDeploy.
An MSI would probably work best. Odds are, your customers will want to be in control of when/if the update happens, and an MSI is probably the simplest mechanism for giving out such an update.
John and Trip have great answers. I just wanted to add one little thing, unless this is an open source project:
Don't deploy source code.
Your client's app should be compiled and obfuscated.
精彩评论