ASP.NET MVC - Castle ActiveRecord - Show SQL queries

吃可爱长大的小学妹 提交于 2019-12-22 18:01:59

问题


I'm using ASP.NET MVC with Castle ActiveRecord as my persistance layer.

I want to know if it's possible to show the SQL queries being executed on my MySQL server.

I know it's possible in a Web application using the "show_sql" property in the Castle XML configuration file, but I don't know how to do it using a Web application, since I don't have access to the Console.

I think I can use log4net to do it, but after some research using Google, I haven't been able to come up with a solution.


回答1:


In your Application_Start:

XmlConfigurator.Configure(new FileInfo(Server.MapPath("/log4net.config")));

Then you need a log4net.config in your root, something like this:

<?xml version="1.0" encoding="utf-8" ?>

<log4net debug="true">
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender, log4net" >
        <param name="File" value="log.txt" />
        <param name="AppendToFile" value="true" />
        <rollingStyle value="Date" />
        <datePattern value="yyyyMMdd" />
        <maxSizeRollBackups value="7" />
        <layout type="log4net.Layout.PatternLayout, log4net">
            <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
        </layout>
    </appender>

    <root>
        <priority value="DEBUG" />
        <appender-ref ref="LogFileAppender"/>
    </root>
</log4net>

Here's a sample app you can use as reference.




回答2:


Here is a tutorial on how to configure log4net for ASP.NET, it's all the same for MVC: http://www.codeproject.com/KB/aspnet/Log4Net_Configuration.aspx

And here is how to configure NHibernate to output SQL to log4net http://www.davesquared.net/2008/01/viewing-sql-generated-by-nhibernate.html



来源:https://stackoverflow.com/questions/1800285/asp-net-mvc-castle-activerecord-show-sql-queries

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!