我有NHibernate的以下配置文件:
Server=.\SQLEXPRESS;Database=mydb;Integrated Security=True; NHibernate.Dialect.MsSql2005Dialect NHibernate.Connection.DriverConnectionProvider NHibernate.Driver.SqlClientDriver auto 500 true
但SQL不会显示在Visual Studio的输出窗口中.是否必须安装log4net?或者应该show_sql
独自工作?
要在Visual Studio的输出窗口中显示SQL,请将log4net配置为在log4net配置中使用TraceAppender.这个:
然后这个:
编辑:我似乎无法正确格式化这里.有关代码示例,请参阅此链接
对于那些喜欢代码而不是配置的人,以下代码片段将使用简单的控制台appender创建相应的NH记录器.
var hierarchy = (Hierarchy) LogManager.GetRepository(); var logger = (Logger) hierarchy.GetLogger("NHibernate.SQL"); logger.AddAppender(new ConsoleAppender {Layout = new SimpleLayout()}); hierarchy.Configured = true;
show_sql
输出到Console.Out
- 运行集成测试时最有用