ASP.NET MVC - Castle ActiveRecord - Afficher les requêtes SQL
-
05-07-2019 - |
Question
J'utilise ASP.NET MVC avec Castle ActiveRecord comme couche de persistance. .
Je veux savoir s'il est possible d'afficher les requêtes SQL en cours d'exécution sur mon serveur MySQL.
Je sais que cela est possible dans une application Web à l'aide de l'option "show_sql". dans le fichier de configuration Castle, mais je ne sais pas comment le faire à l'aide d'une application Web, car je n'ai pas accès à la console.
Je pense que je peux utiliser log4net pour le faire, mais après quelques recherches avec Google, je n'ai pas pu trouver de solution.
La solution
Dans votre Application_Start:
XmlConfigurator.Configure(new FileInfo(Server.MapPath("/log4net.config")));
Ensuite, vous avez besoin d'un log4net.config à la racine, quelque chose comme ceci:
<?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>
Voici un exemple d'application que vous pouvez utiliser comme référence.
Autres conseils
Voici un tutoriel sur la configuration de log4net pour ASP.NET, il en va de même pour MVC: http://www.codeproject.com/KB/aspnet/Log4Net_Configuration.aspx
Et voici comment configurer NHibernate pour générer du SQL vers log4net http://www.davesquared.net/2008/ 01 / Viewing-sql-généré-par-nhibernate.html