Different as all these events are, they are all EventHandlers that follow the basic signature (Object, ~EventArgs). It would be useful to have NHibernate receive an event handler for these events. Probably this would require changes in the Driver or Dialect classes. If there is interest, I can work on a pull request. Could use some help on the definition of an API.
Environment
None
Activity
Show:
Ricardo Peres October 18, 2014 at 8:37 AM
Pull request: https://github.com/nhibernate/nhibernate-core/pull/363 Because this is has a small API change in IDriver, it should only be considered for NH 5. Implemented support for notification events for all drivers except SQLite-related. Waiting for feedback.
Different ADO.NET connection providers offer different ways to retrieve informational messages from the server:
SQL Server uses SqlConnection.InfoMessage event (http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.infomessage(v=vs.110).aspx)
ODBC uses OdbcConnection.InfoMessage event (http://msdn.microsoft.com/en-us/library/system.data.odbc.odbcconnection.infomessage(v=vs.110).aspx)
OLE DB uses OleDbConnection.InfoMessage event (http://msdn.microsoft.com/en-us/library/system.data.oledb.oledbconnection.infomessage(v=vs.110).aspx)
SQL Server CS uses SqlCeConnection.InfoMessage (http://msdn.microsoft.com/en-us/library/system.data.sqlserverce.sqlceconnection.infomessage(v=vs.100).aspx)
Oracle (.NET deprecated class) uses OracleConnection.InfoMessage event (http://msdn.microsoft.com/en-us/library/system.data.oracleclient.oracleconnection.infomessage(v=vs.110).aspx)
Oracle (native provider) uses OracleConnection.InfoMessage event (http://docs.oracle.com/cd/B28359_01/win.111/b28375/OracleConnectionClass.htm#i1001398)
MySQL (native) uses MySqlConnection.InfoMessage event (http://dev.mysql.com/doc/connector-net/en/connector-net-ref-mysqlclient-mysqlcommandmembers.html#connector-net-ref-mysqlclient-mysqlconnection-infomessage)
MySQL (Devart) uses MySqlConnection.InfoMessage event (http://www.devart.com/dotconnect/mysql/docs/Devart.Data.MySql~Devart.Data.MySql.MySqlConnection~InfoMessage_EV.html)
PostgreSQL uses NpgsqlConnection.Notification event (http://npgsql.projects.pgfoundry.org/docs/api/Npgsql.NpgsqlConnection.Notification.html)
Firebird uses FbConnection.InfoMessage (http://sourceforge.net/p/firebird/NETProvider/ci/75316e13889036a88d6d961037b6c8f3cd662712/tree/source/FirebirdSql/Data/FirebirdClient/FbConnection.cs)
Sybase ASA uses AsaConnection.InfoMessage (http://dev.cs.uni-magdeburg.de/db/sybase9/help/dbpgen9/00000442.htm)
Sybase ASE uses AseConnection.InfoMessage (http://infocenter.sybase.com/help/topic/com.sybase.infocenter.dc20066.1570100/doc/html/san1364409556352.html)
Informix uses IfxConnection.InfoMessage event (http://publib.boulder.ibm.com/infocenter/idshelp/v111/topic/com.ibm.net_cc.doc/dqx1db2connectionclass.htm#dqx1db2connectionclassinfomessageevent)
Ingres uses IngresConnection.InfoMessage event (http://community.actian.com/wiki/DOT_NET_DataProvider)
DB2 uses DB2Connection.InfoMessage (http://media.datadirect.com/download/docs/dotnet2_2/dotnetref/dotnetdb2.html)
Sybase SQL Anywhere uses SAConnection.InfoMessage event (http://dcx.sybase.com/1101/en/dbprogramming_en11/ianywhere-data-sqlanywhere-saconnection-infomessage2-0.html)
Etc
Different as all these events are, they are all EventHandlers that follow the basic signature (Object, ~EventArgs). It would be useful to have NHibernate receive an event handler for these events. Probably this would require changes in the Driver or Dialect classes.
If there is interest, I can work on a pull request. Could use some help on the definition of an API.