2010-10-26 2 views
0

В программном обеспечении (архитектура клиент-сервер). Я хотел бы создать кэш в локальной файловой системе для некоторых данных, полученных по сети. (они отмечены как DataContract и Serializable). Данные могут быть изменены другими пользователями, поэтому их необходимо синхронизировать.Кэш данных в файловой системе, C#

В нескольких словах: Мне нужно что-то вроде файлов * .ost для Outlook.

Какова наилучшая практика для достижения этой цели или любое хорошее решение?

+0

Проверьте: http://stackoverflow.com/questions/4018859/what-would-you-recommend-for-this-project/. Главное отличие - у вас есть много пользователей для изменения хранилища данных. Удовлетворительно ли они изменяют данные? Можете ли вы дать некоторые сведения о том, как должен действовать кеш, когда он недействителен и как делится? Что именно вы подразумеваете под «синхронизированным». –

+0

Кэш должен действовать так же, как и Outlook с обменом. Пользователи могут создавать и изменять задачи (у каждого типа задач есть рабочий процесс, как и во всех трекера), документы (счет-фактура, контракт ... и т. Д.) И другие. – Mart

ответ

1

Моя первоначальная мысль заключается в использовании SQL Server CE, это бесплатно, на основе файлов, быстро и безопасно, и использует синтаксис SQL и инструменты.

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

+0

звучит отлично, и могу ли я синхронизировать их с помощью пользовательских методов? у нас есть пользовательский протокол (sg, как двухсторонний WCF). – Mart

+0

Дополнительным преимуществом использования SQL Server CE является то, что вам не нужно кодировать обработку файлов ... Просто вызовы транзакций базы данных – Dekker500

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