Windows phone 7 config / appSettings?

Rush Frisby picture Rush Frisby · Jun 30, 2010 · Viewed 10.3k times · Source

Is there a way to add a config file for WP7 apps like there is for Windows apps and web apps? I just need an easy way to save a few settings I'd rather not create my own object and have to serialize/deserialize an xml file. There doesn't seem to by any kind of item template that I can add to my project so just wondering if anyone has done this or an idea on the best way?

Answer

Jacob picture Jacob · Jul 20, 2010

I wrote a simple wrapper around the IsolatedStorageSettings class that helps store and retrieve settings. Maybe you will find it useful.

using System.IO.IsolatedStorage;

public static class AppSettings
{
    private static IsolatedStorageSettings Settings = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings;

    public static void StoreSetting(string settingName, string value)
    {
        StoreSetting<string>(settingName, value);
    }

    public static void StoreSetting<TValue>(string settingName, TValue value)
    {
        if (!Settings.Contains(settingName))
            Settings.Add(settingName, value);
        else
            Settings[settingName] = value;

        // EDIT: if you don't call Save then WP7 will corrupt your memory!
        Settings.Save();
    }

    public static bool TryGetSetting<TValue>(string settingName, out TValue value)
    {            
        if (Settings.Contains(settingName))
        {
            value = (TValue)Settings[settingName];
            return true;
        }

        value = default(TValue);
        return false;
    }
}