Сохраняет ли windowsphone 8 неиспользуемое изолированное хранилище в случае обновления приложения?

#c# #.net #windows-phone #isolatedstorage

#c# #.net #windows-phone #изолированное хранилище

Вопрос:

Будет ли оно сохранять неиспользуемое изолированное хранилище после обновления приложения Windows phone 8? и если я изменю сохраненный в нем объект, будет ли он вызывать исключения на устройствах пользователей из-за того, что изменения объекта не сохраняются под ключом, сохраненным в старой версии.

если да, то как я могу изменить / удалить отредактированные / неиспользуемые изолированные хранилища при обновлении приложения Windows phone 8?

Ответ №1:

Isolated Storage данные сохраняются между обновлениями, поэтому они такие же IsolatedStorageSettings , как и в старой версии.

Если вы добавляете / изменяете объекты таким образом: settings["key"] = value; ничего плохого не произойдет после обновления. Кроме того, вы можете проверить, существует ли какое-либо значение или нет, прежде чем читать его:

 if (settings.Contains("key"))
{
    string value = (string) settings["key"];
}
 

Комментарии:

1. Спасибо, но, во-первых: если у меня есть данные в изолированном хранилище, и я больше не буду их использовать в следующей версии. что с ним происходит?

2. Он все равно будет там, но вы можете посмотреть, существует ли файл при запуске приложения, и удалить его, если он не нужен

3. Второе: если я помещу всю свою переменную настроек в объект и сохраню ее в изолированном хранилище. Как в этой ссылке: link если в следующем обновлении я изменю объект, сохраненный в изолированном хранилище, чтобы иметь больше переменных, будет ли он вызывать исключение, потому что я не сохранил его снова с его изменениями из-за использования if (settings.Contains("key")) , и он уже содержит ключ, но с объектом другой структуры.

4. @Ken Tucker Любые ссылки на то, как узнать, существует ли файл при запуске приложения, и удалить его, если он не нужен, особенно если я не знаю ключ сохраненных данных?

5. IsolatedStorageSettings имеет свойство keys, которое вы можете использовать для получения всех сохраненных имен настроек. Повторите цикл настройки и удалите те, которые вам не нужны. Вы можете удалить IsolatedStorageSetting с помощью метода remove .