• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

将LINQ to SQL的log信息发送到debug输出窗口

发布: 2008-5-07 14:44 | 作者: 网络转载 | 来源: 本站原创 | 查看: 574次 | 进入软件测试论坛讨论

领测软件测试网 当你在项目中使用LINQ to SQL的时候, 有一个事情是必须要非常注意的, 那就是要关心一下LINQ to SQL帮你生成的SQL语句, 尤其在你还不是非常熟悉LINQ to SQL的语法, API以及一些Tricks的时候, 这点是非常重要的, 否则一个低效的应用程序可能就要在你手下诞生了.

  有几种办法可以跟踪这些SQL语句:

  1. DataContext本身有提供Log属性来将LINQ to SQL生成的SQL语句格式化并输出到控制台窗口, 通常是这样:
DataContextInstance.Log = Console.Out;
  这个用法对于控制台, Winform应用程序没有问题, 但对于ASP.NET这类的非控制台应用程序不起作用

  2. 使用SQL Profiler来侦测SQL语句, 这个做法通用于任何的应用程序, 实际上也是一个必须要了解的跟踪手段, 当性能真正出现问题是, 这可是个不可少的利器之一.

  3. SQL Profiler虽然好用, 但是对于开发阶段你可能不会想去了解那么多的细节, 例如SQL语句的执行情况, CPU耗费时间等等, 尤其是刚开始学习LINQ to SQL的时候, 由于对语法的不熟悉, 可能更多的时候是关心如何用LINQ to SQL的API构造出你想要的SQL语句, 例如到底API映射成了inner join还是left join, 到底执行了多少次的sql, 当你关心这个的时候, 如果要是能将Log信息直接发送到Debug的输出窗口, 那该多方便啊. Kris Vandermotten 已经创建好了一个这个工具类, 你只要使用这样的语法:
MyDataContext db = new MyDataContext(); db.Log = new DebuggerWriter();
  就可以在启动Debug调试的时候将Log信息发送到Debug的output窗口了, 非常方便, 强力推荐你使用.

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: LINQ Linq log sql SQL Sql 窗口 debug


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网