Лучший подход для переноса приложения WPF NHibernate Client Server Desktop на то, к которому можно получить доступ из разных мест - PullRequest
0 голосов
/ 21 ноября 2010

Начиная с нуля с точки зрения знаний, я написал настольное приложение, использующее WPF и NHibernate. Это помогло мне освоиться с NHibernate и WPF.

Однако существует требование сделать приложение так, чтобы к нему можно было обращаться из нескольких мест - к ним относятся портативные устройства с очень простым веб-браузером (без поддержки javascript), веб-службы, Интернет, настольное приложение и, возможно, другие пользовательские интерфейсы.

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

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

На стороне сервера, я думаю, у меня есть веб-сервер (IIS?), NHibernate и база данных, а также какой-то способ связи между клиентами и сервером.

Что будет лучшим выбором в этих обстоятельствах? Это отдых? МЫЛО? WCF? Что-то, о чем я не знаю / не упомянул?

Буду очень признателен за любую помощь и совет от людей, которые реализовали подобные вещи.

1 Ответ

0 голосов
/ 23 ноября 2010

Ну, так как вы уже сделали большую часть работы на рабочем столе, перемещение реальной части доступа к данным на веб-сервисе не составит труда.

На вашем месте я бы сделал этот переход и сделал бысервис SOAP / WCF имеет те же подписи (или, по крайней мере, как можно ближе) к уровню данных.Это облегчит переход к уже написанному приложению.Вам нужно будет добавить код для синхронизации или просто код безопасности на случай, когда служба недоступна.

Для мобильного доступа через тонкий веб-клиент, как в браузере, вы просматриваете веб-сайт / приложение, которое касаетсяБД (возможно, через тот же веб-сервис доступа к данным) и генерирует html ...

Я не могу посоветовать между rest / soap / wcf, так как у меня небольшой опыт работы со всеми, но я могу сказать, что ясоздали аналогичную настройку с помощью SOAP WebService для веб-приложения и приложения .NET Compact Framework для WM6 +, и это хорошо работает.

...