Создание автономного приложения базы данных на WP7 — найдите правильный способ

#database #windows-phone-7 #client-server

#База данных #windows-phone-7 #клиент-сервер

Вопрос:

Мне нужно создать автономное приложение базы данных на WP7. Приложение простое — оно выполняет заказы от наших клиентов, а затем переводит их на главный сервер (MS SQL).

Потратьте несколько дней на чтение существующих технологий — но я все еще в замешательстве. Что подходит для этого проекта?

  1. Платформа синхронизации. Выглядит неплохо, но, как я понимаю, он предоставляет отдельные таблицы — ссылок на них нет. Все ссылки, которые я должен создать на стороне клиента. Грустно.

  2. Entity FrameWork на стороне сервера. И я понятия не имею, что я могу использовать на стороне клиента. Есть ли способ сериализовать объект entity, чтобы изолировать хранилище, затем восстановить его и продолжить работу с ним? Может быть, я смогу использовать Sync FrameWork, но тогда схема станет странной — вроде как один из способов.)))

  3. Работа с WCF и XML — наиболее простая для меня. Много кода и преобразований, но в данном случае я понимаю поток данных. С другой стороны — у меня уже есть приложение с чистыми SQL-запросами. Я хочу быть продвинутым. ))))

  4. Использование внешних баз данных (например, siaqodb). Какой из них? siaqodb поддерживает «Поставщик синхронизации», но он не поддерживает ссылки на объекты beetwen — поэтому я должен создавать их самостоятельно? Есть ли выгода? Я не знаю.

Есть ли другой способ создания таких приложений? Укажите это, пожалуйста.

Комментарии:

1. не могли бы вы подробнее рассказать о приложении и его функциональности?

2. Я прочитал это в соответствующем озаглавленном wpcentral.com/mix11-announcements-windows-phone-rumors что MS может внедрить SQL CE в WP7. Так что, возможно, решение вашей проблемы появится таким образом.

3. 2 Morpheus. Это система создания заказов. Клиентами являются WP7-телефоны. Главный сервер — MS SQL databse

4. 2 Stonetip. Я не могу использовать их «introduct» в качестве базы данных на реальном устройстве. )))

5. @Monochromie: Вот почему я ввел это как комментарий, а не ответ. Люди, читающие это, могут по-прежнему ценить осознание того, что появится другое решение, предположительно в мае. Согласно сегодняшнему выступлению MIX, SQL CE для WP7 также будет поддерживать запросы LINQ.

Ответ №1:

Если это нужно сделать в автономном режиме, то я бы обычно использовал что-то вроде:

  • сохранение минимального объема необходимых данных в изолированном виде с использованием специфичной для WP7 базы данных, такой как Sterling
  • используя либо новый REST, либо новую службу RIA / WCF с объектами / функциями, которые вы определяете, чтобы обеспечить требуемую синхронизацию данных

Я думаю, это ваш вариант 3?

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

Комментарии:

1. Вы правы. «Закодируйте синхронизацию» — мое предыдущее приложение было закодировано таким образом. Теперь это работает без каких-либо проблем. И если проблема появится — я знаю, куда обратиться. И насчет «небольшого размера» — вы тоже правы.