Может ли кто-нибудь пролить свет на разницу этих двух? Я хочу свободно использовать Nhibernate, поддержку которого обеспечивает второе средство. Но я также хочу использовать модуль http (SessionWebModule) для поддержки открытого сеанса в представлении, который, похоже, находится в первом объекте. Совместимы ли они, должен ли я использовать оба?
Замковые сооружения NHibernateIntegration и замковые сооружения NHibernate
Ответы (1)
Я создатель NHibernate Facility и коммиттер Castle.Transactions. (не участвует в программе интеграции NHibernate)
Я создал объект NHibernate как проект, предназначенный только для объектов Windsor. В основном он работает с концепцией сеанс на транзакцию, а не сеанс на запрос. Тем не менее, в c'tor NHibernateFacility вы можете передать перечисление, которое делает стиль жизни по умолчанию сеанс на запрос.
Они несовместимы, как видно из номеров версий. NHibernate Facility совершенно новый (но в производстве, потому что он очень-очень маленький). NHibernate Integration, с другой стороны, является официальным продуктом.
NHibernate Facility требует, чтобы вы использовали Transactions 3.0, которая на данный момент является бета-версией. Поддержка tx полностью есть, но не транзакционные биты NTFS.
Я использую свой собственный NHibernate Facility для своих собственных проектов, и он работает очень хорошо. YMMV.