假设我要做一些需要访问NHibernate的ISession
的东西。例如,通过ISQLQuery
运行Sql查询或通过session.Linq<MyType>()
运行LINQ-to-NHibernate。我知道有两种方式可以访问ISession
:
ActiveRecordMediator.GetSessionFactoryHolder().CreateSession()
ActiveRecordMediator.Execute()
每个人的利弊是什么?还有另一种替代方式吗?
答案 0 :(得分:0)
我无法想到任何技术理由更喜欢一个而不是另一个,但ActiveRecordMediator.Execute是documented way。
顺便说一下,你不需要做任何这样的LINQ查询,你可以使用Castle.ActiveRecord.Linq代替。