Зачастую при работе с БД(да и не только), особенно при использовании какого-нибудь ОРМ, возникает задача упрощения тех или иных процедур, которые приходится вызывать очень часто(к примеру открытие транзакции и её коммит, запросы с NOLOCK или банальный препроцессинг данных). Конечно все можно сделать по-старинке:
Но «Шурик, это же не наш метод!»®. Потому мы пойдем дальше и воспользуемся более гуманными средствами а именно AOP и IOC (что это такое и с чем его едят вы можете почитать в интернете, потому не вижу смысла описывать это здесь)
Интересная на мой взгляд задача…
Допустим у нас есть клиенты и сервер, общающиеся по WCF. Мы не хотим на клиентах деплоить сборки NHibernate и всего что с ним связано (в случае например, если клиенты написаны на Silverlight — это очень актуально), однако хотим воспользоваться некоторыми видами запросов с клиентской стороны (типа Criteria в Nhibernate).
Как к этому подступиться?
Эта статья является продолжением (начало здесь: ) и содержит материал, рассказанный на на заседании MCP клуба 24 декабря 2009 года.
В прошлой части мы рассмотрели базовые возможности Fluent NHibernate, научились строить мэппинг. Теперь попробуем использовать все это для создания базы данных и сохранения/загрузки сущностей в базе.
Разобьем задачу на подзадачи:
* Создание конфигурации NHibernate (класс Configuration)
* Создание структуры базы
* Управление сессиями и транзакциями
* Управление сущностями (CRUD)
В этот пост войдет обзор материала, представленного мной на заседании MCP клуба 24 декабря 2009, и немного дополненного.
Интересен будет всем, кто интересуется ORM технологиями, конструированием DAL и желающим сэкономить время на разработку.