2010-06-20 2 views
2

Поскольку использование изолированного хранилища для silverlight может обеспечить способ хранения локальных данных пользователя и не подключенных к Интернету, я хотел бы услышать ваши мысли о разумной синхронизации dbdata и silverlight isolatedstoragedata.silverlight synchronize isolatedstorage с базой данных

В настоящее время я реализовал решение, но для меня это кажется немного сложным, поэтому я хотел бы услышать, мог ли я сделать это по-другому.

У меня есть список документов, которые я сохраняю в изосторе.

документ имеет (datetime) DateModified и (bool) свойства DeleteOnSync, которые необходимы для синхронизации. Когда пользователь подключается к Интернету, приложение проверяет список документов, хранящихся в db, со списком в isostore и объединяет два списка в один, где (если два объекта имеют общий идентификатор), только самый новый документ (тот, новый DateModified). Когда список будет объединен, будет обнаружен «DeleteOnSync», в котором документы с этим свойством, установленным в true, будут удалены как из db, так и из isostore. Затем он сохраняет этот новый список как для db, так и для isostore.

Имеет ли это смысл?

ответ

2

Недавно Microsoft выпустила CTP SyncFramework 3.0, который позволяет синхронизировать офлайн с несколькими клиентами, включая Silverlight. На клиенте не требуется время выполнения, но вам нужно реализовать протокол для обработки обновлений.

Вы можете получить более подробную информацию об этой версии от the session, которую Майк Кларк представил в MIX10.

Вы можете быть в состоянии получить приглашение к выпуску CTP из NinaH здесь: - http://social.msdn.microsoft.com/Forums/en-US/syncdevdiscussions/thread/d2611400-e3c3-4ed8-a28a-25185ce3ffc3--

Cheers, D.

1

Имеет смысл, но вы также можете взглянуть на Microsoft Synchronization Framework и посмотреть, сможет ли он сэкономить вам некоторую работу.

+0

Sync Framework не Silverlight дружественный, но. Многие люди просили об этом, и MS ответила, что они изучают его. –

+0

@Matt, спасибо за обновление. Похоже, это должно быть приоритетным. –

1

У меня есть решение, которое включает в себя динамический поворот серверов данных для привязки клиентов к datagrid, до сих пор Ive реализовал http://silverdb.codeplex.com/ из codeplex как фасад над изостором, потому что мне нравится синтаксис linq и его читабельность. Вам может быть интересно?

+0

есть ли документация по проекту? – Jakob

+0

должно быть, его не трудно получить, хотя –