如何使用NHibernate配置XML文件中的Interceptor?

时间:2013-03-07 13:57:14

标签: nhibernate interceptor

我想在没有代码更改的情况下使用nhibernate拦截器(覆盖EmptyInterceptor)。

可以从XML配置文件中执行此操作吗?

我的EmptyInterceptor覆盖类:

public class QueryNumberInterceptor : EmptyInterceptor {
        public override SqlString OnPrepareStatement(SqlString sql) {
            return base.OnPrepareStatement(sql);
        }
}

我的XML配置文件:

<config>
    <add key="connection.driver_class" value="NHibernate.Driver.SqlClientDriver, NHibernate"/>
    <add key="dialect" value="NHibernate.Dialect.MsSql2008Dialect, NHibernate"/>
    <add key="connection.connection_string" value="ConnectionString = ${MainConnection}"/>
    <add key="show_sql" value="true"/>
</config>

1 个答案:

答案 0 :(得分:1)

AFAIK,你不能用配置文件注入一个拦截器。

但你可以注册一个event listener。您可以使用拦截器对事件侦听器执行相同的操作。但它是一个不同的概念,因此看起来不同。