Intercept SQL statements containing parameter values generated by NHibernate

后端 未结 4 1111
被撕碎了的回忆
被撕碎了的回忆 2020-12-05 07:30

I use a simple interceptor to intercept the sql string that nhibernate generates for loging purposes and it works fine.

public class SessionManagerSQLInterce         


        
4条回答
  •  北荒
    北荒 (楼主)
    2020-12-05 08:16

    It is simpler (and works for all NH versions) to do this :

    public class LoggingSqlClientDriver : SqlClientDriver
    {
        public override IDbCommand GenerateCommand(CommandType type, NHibernate.SqlCommand.SqlString sqlString, NHibernate.SqlTypes.SqlType[] parameterTypes)
        {
            SqlCommand command = (SqlCommand)base.GenerateCommand(type, sqlString, parameterTypes);
    
            LogCommand(command);
    
            return command;
        }}
    

提交回复
热议问题