Saving Details in Silverlight with Roaming Profiles

As I’m working on my Silverlight app and releasing it in the wild, I’m finding some cases that I would not normally deal with as a website developer.  The latest gotcha has been saving user settings.

So going back to my GiveCamp app idea… let’s say that I want to give the end user a way to set a default GiveCamp.  I would need that piece of information stored somewhere.  I figured Isolated Storage would be a great spot for saving the data.  However, Silverlight doesn’t support roaming profiles.  Normally, I wouldn’t be concerned about that; I remember the headaches of roaming profiles from when I worked IT and I would love to chalk it up as yet another issue with roaming profiles.  But there’s another part of me that wants to be able to save this data even if my end users are cursed with roaming profiles.

I’m sure I’m not the only Silverlight dev out there who’s run into this.  Are there others out there who have run into the roaming profiles issue?  If so, what have you done to make your app accessible to users bound by roaming profiles?

2 thoughts on “Saving Details in Silverlight with Roaming Profiles

  1. Matt Ray says:

    Hey Sarah! I am running into this as well. The behavior I am seeing is:

    User logs in at work, downloads my app (out of browser install), app records some data for the user to isolated storage, user closes app, user shuts down, user goes to another physical location (offline), user runs app, app thinks nothing is in the isolated storage.

    Does this sum up your experience? Is there a way around this?

    Thanks!

    Matt Ray

    • sarah says:

      Hey Matt!

      Yep… sounds like the user works in a spot that may be using roaming profiles. Unfortunately, this is a known downfall of storing data with IsolatedStorage. The only way around it, at that point, is to store the settings in a central location – such as a database.

      – Sarah

Leave a Reply

Your email address will not be published. Required fields are marked *