转:查看LINQ生成SQL语句的几种方法
2012-02-15 17:15
411 查看
查看LINQ生成SQL语句的几种方法
分类:C#|DOTNET发布:yaosansi浏览:日期:2008年9月25日
转载请标明出处:原文:
记录LINQ生成的SQL语句是常用的调试方式,而且能根据需要来优化LINQ生成的SQL语句,更能了深入的了解LINQ.
DataContext的Log属性来将LINQtoSQL生成的SQL语句格式化.
一.控制台程序(Console)
dataContext.Log=Console.Out;
二.利用GetCommand方法
dataContext.GetCommand(query).CommandText;
三.使用LINQPad(
LINQPad支持C#3.0和Framework3.5的全部功能:
LINQtoSQL
LINQtoObjects
LINQtoXML
usingSystem;
usingSystem.Diagnostics;
usingSystem.Globalization;
usingSystem.IO;
usingSystem.Text;
namespaceVandermotten.Diagnostics
六.将LINQtoSQL生成的SQL语句写入日志文件
DataContext.Log是System.IO.TextWriter类型,所以你可以用以下的方法来做.
dBLinqDataContext.Log=sw;
varquery=dataContext.Customers.Single<Customer>(c=>c.CustomerID.Contains("s"))
.Skip(0).Take(10).ToList();
[code]sw.Flush();
sw.Close();
[/code]
但以上方法有个缺点,就是需要在每个实现的方法中都写这么多代码.使用起来太不方便.参照dataContext.Log=Console.Out的表现形式
由是有了FileLog类.(当然,FileLog类除了此功能还有一些基本的记录日志的方法)
使用时直接dataContext.Log=Yaosansi.IO.FileLog.Out;即可.默认会在桌面上生成一个名叫UnNameFile.txt的文件.
当然如果你不想使用默认的文件名和路径也可以使用dataContext.Log=newYaosansi.IO.FileLog("FileName")的方式.
下面是FileLog类的源码:
//原文:http://www.yaosansi.com/post/1380.html
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Text;
usingSystem.IO;
namespaceYaosansi.IO
相关文章推荐
- 查看LINQ生成SQL语句的几种方法
- 查看LINQ生成SQL语句的几种方法
- 查看LINQ生成SQL语句的几种方法
- LINQ学习实战:查看LINQ生成SQL语句的几种方法
- 查看LINQ生成SQL语句的几种方法
- 查看LINQ生成SQL语句的几种方法
- linq to entity 查看生成的SQL语句
- thinkphp如何查看方法自动sql生成的sql语句
- 用LinqPad查看Nhibernate生成的sql语句
- 查看Oracle执行计划的几种方法 / oracle中DateTime类型的字段,建立索引后,查寻时索引如何生效?/ oracle 中sql语句怎么加多个强制索引
- [NHibernate]利用LINQPad查看NHibernate生成SQL语句
- 用LinqPad查看Nhibernate生成的sql语句
- 查看Linq to Sql生成的sql语句(转)
- LinqToSql EntityFramework(ef)查看生成的sql语句
- 使用Linq时查看生成的sql语句
- 查看Linq生成的SQL语句
- NHibernate 查看生成的sql语句的方法
- Linq查看所生成的SQL语句
- 在控制台打印 MyBatis 生成的 sql 语句的配置方法
- Hibernate主键生成策略与save()方法是否发sql语句的研究