#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 .