怎么记录XPO产生的sql的执行情况?
问题描述:能否查看查询的产生和执行情况?
解决方案:
当然,当你在Vistual Studio中 调试你的项目时,你可以在输出窗口查看XPO的数据库查询和它们的执行结果,请把一下几行代码添加到你的config文件中
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics>
<switches>
<add name="XPO" value="3" />
</switches>
</system.diagnostics>
</configuration>
<configuration>
<system.diagnostics>
<switches>
<add name="XPO" value="3" />
</switches>
</system.diagnostics>
</configuration>
如果你的项目中不包括这样的文件,使用项目|添加新项...菜单 来添加config文件
如果你希望XPO的sql命令执行情况输出到一个文本文件,请在你的项目config文件中添加以下代码,XPO会在项目目录中创建trace.log文件来记录查询。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="LogFileTraceListener" type="System.Diagnostics.TextWriterTraceListener"
initializeData="trace.log" />
<remove name="Default" />
</listeners>
</trace>
<switches>
<add name="XPO" value="3" />
</switches>
</system.diagnostics>
</configuration>
<configuration>
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="LogFileTraceListener" type="System.Diagnostics.TextWriterTraceListener"
initializeData="trace.log" />
<remove name="Default" />
</listeners>
</trace>
<switches>
<add name="XPO" value="3" />
</switches>
</system.diagnostics>
</configuration>
正如你所看到的,XPO使用标准的System.Diagnostics 跟踪记录日志机制。因此,你可以创建你自己跟踪监听类,在数据库中记录查询日志,等。关于此的其他信息在MSDN库中可以找到TraceListener Class