регулярно обновлять базу данных приложения без необходимости обновления приложения - PullRequest
1 голос
/ 29 июля 2011

Я работаю над приложением WP7, которое содержит CategoryGroups категории Продукты

Строки для каждого из этих объектов заполняются при первом запуске приложения.

Проблема в том, что когда приложение будет опубликовано, строки в каждой из сущностей будут изменены (добавлены, удалены, изменены). Я хотел бы несколько предложений о том, как я должен справиться с этим? Любые указатели на существующие примеры кода будут хороши?

Я использую объектно-ориентированную базу данных для хранения своих сущностей. Приложение также позволяет пользователю добавлять свои собственные объекты (которые добавляются в базу данных как персонализированные (помеченные) объекты). Одним из решений, о котором я думал, было чтение XML-файла с сервера, а затем циклический просмотр записей базы данных и внесение необходимых изменений в базу данных. Итак, при первом запуске все объекты будут просто вставлены. При последующих запусках, если атрибут номера версии в xml отличается, данные, заполненные системой, перезагружаются из xml, но пользовательские данные сохраняются.

Кроме того, возможно, проверять наличие нового XML-файла на сервере только при наличии подключения к Интернету и только периодически (например, каждые 2 недели).

Любые другие предложения приветствуются. Если есть более простой и понятный способ - пожалуйста, поделитесь.

Pratik

1 Ответ

2 голосов
/ 29 июля 2011

Думаю, будет справедливо сказать, что этот вопрос не имеет ничего общего с WP7 и связан с поиском эффективного способа вычисления и доставки обновлений дельты.

Отметка времени ваших предметов.При запросе обновления укажите время последнего обновления.Ваш сервер может тривиально запросить элементы более новые, чем этот, и вернуть дельту.На клиенте (т.е. в телефоне) нет необходимости сохранять время последнего обновления, поскольку вы можете просто добавить одну секунду к самой последней отметке времени в элементах, присутствующих на телефоне.

...