views:

52

answers:

2

I am looking into different ways to handle updating an ASP.NET application across many different clients, and looking for suggestions from your previous experience.

  • We need the client apps to check if they have any available updates.
  • A way to Auto update (If possible, something similar to chromes but for webapp).
  • Some way to check that we are the ones sending the updates. (Checksum of some sort I would guess)
  • Any other tips/advice

Thanks

Edit: after thinking more about this overnight, I would have to agree that auto updates may not be the best. However maybe something more along the lines of how wordpress does it. Wordpress will display saying that there is an update available then clicking will auto update the system.

+2  A: 

I would absolutely not have your application auto update on clients (assuming you mean clients are entities external to your organization) servers. We would immediately stop using a product that would "phone home" and update itself. Clients need to be able to choose when and how an update on their server occurs.

If you are going to do this, the easiest way would be to set up URI the systems could ping once a day etc. and see if there are updates available. If so the application would pull it down from the host system and update itself. If you do it using SSL then the certificate would verify the URI being hit is your company.

Kevin
A: 

Having a hard time figuring out if you're actually talking about a web application or a desktop application. If you're trying to do something similar to Chrome...I'm guessing a desktop application. If that's the case...check out ClickOnce deployment.

It offers the first three bullet points you mention:

  1. Every time a person runs the app, it will check for updates.
  2. If updates are found, the user can choose to install them or not (better user experience than forcing the update on the user).
  3. The application always checks the URL that the app was installed from...which in your case would be your servers.
Justin Niessner