当前位置:  开发笔记 > 数据库 > 正文

如何使用NHibernate将SQL调用记录到Visual Studio的控制台?

如何解决《如何使用NHibernate将SQL调用记录到VisualStudio的控制台?》经验,为你挑选了3个好方法。

我有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独自工作?



1> LordHits..:

要在Visual Studio的输出窗口中显示SQL,请将log4net配置为在log4net配置中使用TraceAppender.这个:


    
        
    

然后这个:


    
    

编辑:我似乎无法正确格式化这里.有关代码示例,请参阅此链接


为什么这不是公认的答案?我不认为问题的主人正在搜索付费产品!真正的男人,因为软件公司试图销售他们的产品而受到越来越多的污染!停下来!
它似乎不支持VS2010与.NET 4.0

2> Nathan Baulc..:

对于那些喜欢代码而不是配置的人,以下代码片段将使用简单的控制台appender创建相应的NH记录器.

var hierarchy = (Hierarchy) LogManager.GetRepository();
var logger = (Logger) hierarchy.GetLogger("NHibernate.SQL");
logger.AddAppender(new ConsoleAppender {Layout = new SimpleLayout()});
hierarchy.Configured = true;


我不得不使用TraceAppender而不是ConsoleAppender在Visual Studio输出窗口中看到这一点.

3> Matt Hinze..:

show_sql输出到Console.Out- 运行集成测试时最有用

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有