Kin*_*oon 2 c# linq linq-to-sql
我正在为wpf应用程序中的一组表单使用数据上下文对象,并将一些控件绑定到表的某些子表.我想跟踪数据上下文何时访问数据库.最简单的方法是什么?
使用该DataContext.Log属性:
db.Log = Console.Out;
Run Code Online (Sandbox Code Playgroud)
db你的位置在哪里DataContext?如果构造了多个实例,请在构造函数内部进行DataContext设置,以便正确记录它们.LogDataContext
您可以使用此技术登录到文件,内存或调试窗口,如本教程中所示.如果定义自定义TextWriter派生类,则DateTime.Now只要访问数据库,就可以输出当前的相关SQL语句.
您的扩展TextWriter可能看起来像这样:
class LoggingTextWriter : TextWriter
{
private const string LogFilePath = @"C:\your_log_file.txt";
public override void Write(char[] buffer, int index, int count)
{
Write(new String(buffer, index, count));
}
public override void Write(string value)
{
File.AppendAllText(LogFilePath, DateTime.Now + value);
}
public override Encoding Encoding
{
get { return Encoding.Default; }
}
}
Run Code Online (Sandbox Code Playgroud)
和
db.Log = new LoggingTextWriter();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
100 次 |
| 最近记录: |