【.Net】如何调试Linq
发布:baoqigou | 发布时间: 2009年6月26日《ASP.NET 3.5揭秘》一书中有详细的描述:
1. 使用LINQ to SQL Debug Visualizer,http://www.scottgu.com/blogposts/linqquery/sqlserverqueryvisualizer.zip,将其解压到D:\Program Files\Microsoft Visual Studio 9.0\Common7\Packages\Debugger\Visualizers\,然后就可以再断点处进行跟踪了2. 使用页面的Trace来跟踪所有的Linq语句,方法是将下面的代码放到App_Code文件夹
using System.Web;
using System.IO;
using System.Globalization;
public class TraceWriter : TextWriter
{
public TraceWriter():base(CultureInfo.CurrentCulture) { }
public override void Write(string value) { HttpContext.Current.Trace.Warn(value); }
public override void Write(char[] buffer, int index, int count) { HttpContext.Current.Trace.Warn("Linq", new string(buffer, index, count)); }
public override System.Text.Encoding Encoding { get { return System.Text.Encoding.Unicode; }
}
之后可以设置:
MyDatabaseDataContext db = new MyDatabaseDataContext();
db.Log = new TraceWriter();
grd.DataSource = db.Movies;
grd.DataBind();
如果是使用LinqDataSource控件的话,可以在oncontextcreated事件中:
protected void srcMovies_ContextCreated(object sender, LinqDataSourceStatusEventArgs e)
{
((MyDatabaseDataContext)e.Result).Log = new TraceWriter();
}
- 相关文章:
【.Net】VS2005在调试时,调试页面自动跳转到www.localhost.com,且改变了调试端口的解决办法 (2009-6-12 18:29:51)
【.Net】当Xml中包含xmlns时,SelectSingleNode取不到的情况 (2009-5-25 13:42:41)
【.Net】DbType+SqlDbType+系统数据类型对照表 (2008-12-27 9:2:46)
【.Net】如何在CCNet的测试部分加入外部程序集 (2008-11-17 17:21:21)
【SQL】获取随机记录 (2008-9-12 9:13:10)
【.Net】获取高质量缩略图 (2008-9-12 9:9:19)
【C# 2008】如何将LINQ的查询结果作为返回值 (2008-6-5 14:6:22)
【C# 2008】LINQ演练 (2008-6-5 9:9:55)
【C# 2008】LINQ内部实现研究 (2008-6-4 16:tabindex="4" />





