Запрос к базе данных из разных приложений с помощью nHibernate - PullRequest
0 голосов
/ 27 декабря 2010

На данный момент у меня есть два веб-приложения (одно приложение является приложением MVC2 для управления моим проектом, а второе - приложением с веб-службами).Оба приложения должны иметь дело с базой данных и иметь Nhibernate для запросов к базе данных.Это хороший шаблон? Если нет, то что я могу сделать?

Редактировать 1

Оба приложения могут записывать в базу данных.У меня есть проект DLL, который обрабатывает транзакции базы данных и имеет экземпляр de nhibernate с именем «Repositorio».Тем не менее, у каждого приложения будет свой экземпляр Repositorio.dll, поэтому будет несколько угроз для базы данных. Что мне нужно сделать, чтобы оба приложения использовали один и тот же экземпляр Repositorio.dll?

Ответы [ 2 ]

1 голос
/ 27 декабря 2010

Ответ зависит от того, могут ли оба приложения выполнять запись в базу данных.

Если один только для чтения, я бы сказал, что вы в безопасности.

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

«сервис-ориентированный» не означает, что сервис должен быть распределенным компонентом (например, SOAP или REST или RPC). Если вы инкапсулируете доступ к базе данных в компоненте с четко определенным интерфейсом, вы можете выбрать общий доступ к компоненту как к DLL в обоих приложениях. Делайте его только распределенным компонентом, если это имеет смысл для обоих приложений.

0 голосов
/ 27 декабря 2010

Это звучит прекрасно для меня, даже если оба приложения пишут в базу данных.Я бы просто рекомендовал вам создать третий проект в виде библиотеки классов со всеми вашими материалами, связанными с nHibernate, чтобы избежать написания избыточного кода в обоих проектах.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...