LINQtoSQL动态查询概括

LINQ to SQL有很多值得学习的地方,这里我们主要介绍LINQ to SQL动态查询,包括介绍LINQ to SQL功能和调试特定等方面

LINQ to SQL动态查询

使用LINQ to SQL动态查询,这个例子用CreateQuery()方法创建一个IQueryable类型表达式输出查询的语句。

这里给个例子说明一下:

 
 
 
  1. var c1 = Expression.Parameter(typeof(Customer), "c");  
  2. PropertyInfo City = typeof(Customer).GetProperty("City");  
  3.  
  4. var pred = Expression.Lambda, bool>>(  
  5. Expression.Equal(  
  6. Expression.Property(c1, City),  
  7. Expression.Constant("Seattle")  
  8.  ), c1  
  9. );  
  10. IQueryable custs = db.Customers;  
  11. Expression expr = Expression.Call(typeof(Queryable), "Where",  
  12. new Type[] { custs.ElementType }, custs.Expression, pred);  
  13. IQueryable q = db.Customers.AsQueryable().  
  14. Provider.CreateQuery(expr); 

Log属性用于将SQL查询或命令打印到TextReader。此方法对了解 LINQ to SQL功能和调试特定的问题可能很有用。

下面的示例使用Log属性在SQL代码执行前在控制台窗口中显示此代码。我们可以将此属性与查询、插入、更新和删除命令一起使用。

 
 
 
  1. //关闭日志功能  
  2. //db.Log = null;  
  3. //使用日志功能:日志输出到控制台窗口  
  4. db.Log = Console.Out;  
  5. var q = from c in db.Customers  
  6. where c.City == "London"  
  7. select c;  
  8. //日志输出到文件  
  9. StreamWriter sw = new StreamWriter(Server.MapPath("log.txt"), true);  
  10. db.Log = sw;  
  11. var q = from c in db.Customers  
  12. where c.City == "London"  
  13. select c;  
  14. sw.Close(); 

名称栏目:LINQtoSQL动态查询概括
转载注明:http://www.hantingmc.com/qtweb/news20/324570.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联