我有一个简单的方法…
Session.CreateSQLQuery(syntax).List<T>();
问题是,当我针对一个存在连接服务器连接的存储过程执行此操作时,我收到以下错误…
无法执行该操作,因为链接服务器“MyLinkedServer”的OLE DB提供程序“MSDASQL”无法启动分布式事务.
我的问题是;我怎么能告诉NHibernate我不想使用交易..?
谢谢..!
最佳答案 我通常喜欢这样:
session = PersistenceManager.GetCurrentSession();
IList<T> lst;
using ( var trans = session.BeginTransaction() )
{
IQuery sql = session.CreateSQLQuery(syntax);
lst = slq.List<T>();
trans.Commit();
}