Nhibernate 在Spring.Net中使用事务属性时,如何覆盖默认隔离级别

Nhibernate 在Spring.Net中使用事务属性时,如何覆盖默认隔离级别,nhibernate,spring.net,isolation-level,spring-transactions,Nhibernate,Spring.net,Isolation Level,Spring Transactions,在方法上使用Transaction()属性时,默认隔离级别为ReadCommitted。我要做的是在Spring.NET配置中将默认隔离级别设置为ReadUncommitted(以便不修改当前存在的所有事务属性定义) 我该怎么做?可以用Spring.NET1.2完成吗 我试着使用tx:advice等来跟随,但没有效果 我甚至用Reflector介绍了Spring的代码,但我似乎从中了解到,Spring只是从方法的属性声明中读取设置 这是可以做到的,还是我必须检查代码并在必要时修改属性?我通常使用

在方法上使用Transaction()属性时,默认隔离级别为ReadCommitted。我要做的是在Spring.NET配置中将默认隔离级别设置为ReadUncommitted(以便不修改当前存在的所有事务属性定义)

我该怎么做?可以用Spring.NET1.2完成吗

我试着使用tx:advice等来跟随,但没有效果

我甚至用Reflector介绍了Spring的代码,但我似乎从中了解到,Spring只是从方法的属性声明中读取设置

这是可以做到的,还是我必须检查代码并在必要时修改属性?

我通常使用例如:

[Transaction( IsolationLevel.ReadUncommitted )]
关于我的存储库方法。它与
协同工作



您应该能够创建自己的事务拦截器,扩展标准事务拦截器。然后使用ObjectNameAutoProxyCreator而不是您引用的TransactionProxyFactoryObject来连接该对象。

谢谢Andreas,但我实际上是想看看是否可以通过在配置文件中设置默认值(对于所有方法)isolationLevel.ReadUncommitted来避免这样做,同时仍然使用[Transaction()]。但我怀疑这是不可能的:-(如果我找到时间,我会尝试编写此代码,但可能不会很快。
<object
  name="HibernateTransactionManager"
  type="Spring.Data.NHibernate.HibernateTransactionManager, Spring.Data.NHibernate32"
  dependency-check="none">
  <property name="DbProvider" ref="MsSqlDbProvider"/>
  <property name="SessionFactory" ref="SessionFactory"/>
</object>