Tuesday, January 29, 2013

Upgrading Silverlight application while in use on clients

Upgrading Silverlight application while in use on clients

I have a Silverlight 5 application which communicates with the server by a WCF service.

Most users that use the application are running it inside a browser (mostly Internet Explorer, but also other browsers are used) and a few install it OOB (Out Of Browser).

When the application starts, It checks for newer versions and upgrade if necessarily. Nothing out of the ordinary here.

Now and then, mostly in evenings and weekends, I do upgrades on the solution. That may be changes in the database, changes in the WCF service, changes in the Silverlight application itself, or a mix of all. And in most cases, that is absolutely no problem.

My problem is that some users never close their web browser. Some users even work via a Citrix window, and only close the Citrix window and goes home after work, letting the Silverlight application run and exist in the web browser. And some just don't close the browser at all. Or if they run OOB, they let the application stay open. Those are my problem. Because they will never check for new updates. The Silverlight application will never upgrade, and also not fit to the new WCF service which may be upgraded.

That all makes the Silverlight applications crash and throw strange exceptions because the world around has changed.

Has anyone had similar problems and actually found a good solution?

I have tried:

  • Creating a Timer that resets at any keyboard- or mouse clicks and exits the application after a given period of time with no activity. But it seems like this timer sometimes don't count, like when dosconnected from RDP or Citrix session.

  • Checking for updates every time a certain control or window is showing. But that is not a good solution because all users may not use the same. It may also interrupt the user if they are working with something.

But they all seem to me like a little tacky work-arounds.

Any suggestions, anyone?

Answers & Comments...




No comments:

Post a Comment

Send us your comment related to the topic mentioned on the blog