I have the following configuration file for NHibernate:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.connection_string">Server=.\SQLEXPRESS;Database=mydb;Integrated Security=True;</property>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="connection.release_mode">auto</property>
<property name="adonet.batch_size">500</property>
<property name="show_sql">true</property>
</session-factory>
</hibernate-configuration>
But the SQL doesn't show in the output window of Visual Studio. Is it mandatory to install log4net? Or should show_sql
work alone?
For those who prefer code rather than configuration, the following snippet will create the appropriate NH logger with a simple console appender.
To show the SQL in the output window of Visual Studio, configure log4net to use TraceAppender in your log4net config. This:
Then this:
EDIT: I can't seem to format this correctly here. See this link for code example
There is something called NHibernate profiler you can use.
http://nhprof.com/
it's pricey but it works and it has a 30 day trial.
show_sql
outputs toConsole.Out
- it's most useful when running integration testsSince NHibernate 3.0 you can use loquacious configuration
Others info available at http://fabiomaulo.blogspot.com.ar/2009/07/nhibernate-configuration-through.html