2013-10-25 5 views
1

Я использую breezejs в автономном режиме в первый раз, выполняя запрос вначале на сервере и помещая объекты в локальном хранилище, где я запрашиваю кеш-менеджер сущности.Кэш обновлений breezejs с изменениями с сервера

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

Это отлично работает, но мне интересно, есть ли способ получить только изменения с сервера, я думал, что, возможно, установить GUID ревизии или временную метку для каждой записи, а затем проверить метаданные, если она нуждается в обновлении, но Я действительно не знаю, как это сделать.

Так что мой вопрос может быть изменен, чтобы разрешить такой случай использования?

И может быть, есть способ, который я пропускаю?

+0

Не прошло бы еще времени, чтобы пройти через все сущности и найти, какие из них разные? Почему бы просто не вернуть всех из них и позволить Бризе решить, какие из них нужно обновить? –

+0

Я слышал, что вы говорите, но я думал об экономии пропускной способности, просто получая изменения, а не сущность дыры. – qorsmond

ответ

1

Я думаю, что ваше направление верное. Если у вас есть столбец с TimeDate в каждой таблице, например «LastModified», и этот столбец будет обновляться при каждом обновлении записи. то вы можете добавить фильтр к каждому запросу бриза после первого, который говорит, что эта дата должна быть позже, чем в последний раз, когда вы выполнили этот запрос «rebase» или начальную загрузку. поэтому он не поддерживается из коробки, но вы можете заставить его работать самостоятельно. руководство по версии не будет действительно хорошей идеей, так как вам придется отправлять все эти предложения по каждому запросу, а затем проверять их все. временная печать имеет больше смысла.

+0

Спасибо, я определенно буду смотреть на использование штампов времени. – qorsmond

Смежные вопросы