Поддерживает ли Fluent-NHibernate сопоставление с процедурами?

Мне было интересно, можно ли заставить Fluent-NHibernate связываться с уже существующими хранимыми процедурами и назначать сопоставление из набора результатов моим собственным объектам домена.

Также может ли Fluent-NHibernate напрямую выполнять процедуры без возвращенного набора результатов?

В основном я рассматривал последствия использования Fluent-NHibernate для замены устаревшей модели TypedDataSet дизайном, управляемым доменом, который может возвращать простые объекты из DAL. Если Fluent-NHibernate не может легко работать с SP, я думаю, что, скорее всего, у меня будет комбинированный DAL, который будет использовать FNH для простых операций CRUD, оставляя сложные процедуры для управления Enterprise Library. Хотя я не думаю, что было бы оптимальным иметь 2 конкурирующих DAL, если FNH не может хорошо работать с SP, я хотел бы услышать любые другие идеи, кроме использования EntLib и FNH вместе.


person Chris Marisic    schedule 17.11.2008    source источник
comment
@Gregory Я взглянул на ваш блог и, честно говоря, не знаю, я поссорился с NHibernate / FNH и продолжал поддерживать все, что исходило от них. Похоже, что было бы неплохо задать вопрос о переполнении стека.   -  person Chris Marisic    schedule 12.05.2011


Ответы (2)


Основная версия Fluent NHibernate (на GitHub) поддерживает вставку, обновление и удаление хранимых процедур.

В конструкторе класса сопоставления вызовите:

SqlInsert("StoredProcName");

Отказ от ответственности: я еще не тестировал это сам, но он, безусловно, скоро пригодится.

Для получения дополнительной информации см. эту ветку в группе Fluent NHibernate в Google.

person Community    schedule 01.02.2010
comment
Приятно знать, конечно, что они гораздо менее полезны, чем процедуры выбора, но я думаю, что это влияет на гораздо более странное программирование. - person Chris Marisic; 01.02.2010
comment
Да ... текущая реализация не очень полезна. В любом случае, чтобы FNH полностью поддерживал (sob) хранимые процедуры CRUD, ему все равно необходимо добавить поддержку для элементов загрузчика и sql-запроса. Но не думаю, что здесь есть прогресс. - person ; 01.02.2010

Просто чтобы ответить на мой собственный вопрос, ответ - не что иное, как вы можете написать сопоставления xml для NHibernate и объединить их с сопоставлениями Fluent-NHibernate. Сопоставление SP для FNH, скорее всего, будет добавлено позже.

person Chris Marisic    schedule 07.01.2009