Сохранение списка - Windows 8

Я разрабатываю Windows 8 эквивалент моего приложения.

Я пытаюсь сохранить простой список строк в ApplicationDataContainer, как я делал бы это с IsolatedStorage для Windows Phone 8.

В Windows Phone 8 я бы сделал это так:

List<String> myList;
myList= readSetting("myList") != null ? (List<String>)readSetting("myList") : new List<String>();

Вспомогательный метод:

        private static object readSetting(string key)
    {
        return IsolatedStorageSettings.ApplicationSettings.Contains(key) ? IsolatedStorageSettings.ApplicationSettings[key] : null;
    }

Но как мне это сделать в Windows 8? Мое приложение имеет тип Split Page.

Большое спасибо!

С наилучшими пожеланиями, Эрик

2 ответа

Эквивалентом IsolatedStorageSettings в Win8 (и WP8) является ApplicationData.Current.LocalSettings

Создать контейнер

var container = ApplicationData.Current.LocalSettings.CreateContainer("defaultContainer",ApplicationDataCreateDisposition.Always);
container.Values["newKey"] = "New Value";

Ваш метод станет:

private static object readSetting(string key)
{
    var container = ApplicationData.Current.LocalSettings.CreateContainer("defaultContainer",ApplicationDataCreateDisposition.Existing);
    if (container == null)
    {
       return null;
    }
    return Container.Values[key]
}

Обратите внимание, что это также будет работать на Windows Phone 8, если вы хотите повторно использовать некоторый код между двумя платформами.

Попробуйте использовать Помощники хранилища, как это и это. Или вы можете использовать StorageFile в Windows 8, которая позволяет читать и писать файлы в локальной папке

Другие вопросы по тегам