前言 上一篇讲述了执行sql和配置的一些功能,这篇说明IQueryable(linq)或执行sql的查询缓存与清理,包括扩展到将缓存存储到Redis中. 扩展类库源码: github:https://github.com/skigs/EFCoreExtend 引用类库: nuget:https://www.nuget.org/packages/EFCoreExtend/ PM> Install-Package EFCoreExtend 查询缓存引用Redis: PM> Install-Pack…
子查询 描述:查询订单数超过5的顾客信息 查询句法: var 子查询 =from cin ctx.Customers                    where                        (from oin ctx.Ordersgroup oby o.CustomerIDinto owhere o.Count() > 5select o.Key).Contains(c.CustomerID)                    select c; in 操作 描述:查…
前段时间准备采用wcf+nh框架开发sl程序,发现采用nh开发不适合我的中型.并且快速开发项目,所以综合考量了下,决定采用wcf+linq to sql . 但是此模式也有缺点,也是linq to sql的缺点,查询语句写起来比较复杂(),只有边摸索,边开发了. 所以第一步就是搭建wcf:,目前我采用的wcf寄宿在一个winform程序,并采用tcp协议(考虑效率问题). 第二步:在wcf服务项目中添加linq to sql 类. 在实现wcf 时,我有个user表和rose表,两个表是关联表,…
linq to sql中,对于同一个DataContext上下文环境,根据表主键选择记录时(当然这里所指的“记录”会自动转成“对象”),如果该记录已经被select过,默认情况下会被自动缓存下来,下次再选择时,将自动返回已缓存的对象,而不是重新从数据库里查询. 在很多情况下(特别是查询的场景),这会提高性能(因为避免了数据库重复查询),但是也时候也会带来麻烦: 比如我们取出一个对象后,对其属性做了修改,然后提交到数据库前,想比较一下原始记录,如果某些属性修改过了,则这样处理,如果未被修改过,则那…
查询数据库中的数据 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Configuration; using System.Data; using System.Data.SqlClient; public partial class _Def…
多条件查询:逐条判断,从第一个条件开始判断,如果满足,取出放入集合,再从集合中查询第二个条件... aspx代码: <body> <form id="form1" runat="server"> <br /> <asp:Label ID="Label1" runat="server" Text="关键字:"></asp:Label> <asp…
var query = from t0 in context.ExpressSendMaster join t1 in context.Supplier on t0.SupplierCode equals t1.SupplierCode join t2 in context.ExpressSendPackageRule on t0.AreaId equals t2.Id into t0_join from t0_t2 in t0_join.DefaultIfEmpty() where t0.Id…
1.多条件查询: 并且 && 或者 || var list = con.car.Where(r => r.code == "c014" || r.oil == 8.2m); 2.模糊查询 1.模糊 var list = con.car.Where(r => r.name.Contains("AT")); 2.开头 var list = con.car.Where(r => r.name.StartsWith("皇冠&quo…
一.Inner Join   //request为查询条件   var result = from a in db.TableA  join b in db.TableB  on a.ID equals b.ID  where a.UserName == request.UserName || a.Mobile == request.Mobile  select new ResponseInfo  {      UserName = ui.UserName,      UserID = ui.I…
通过Expression类进行动态构造lamda表达式. 实现了以下几种类型,好了代码说话: public Expression<Func<T, bool>> GetAndLambdaExpression<T>(string[] keys,object[] values,string[] methons) { Expression expression_return = Expression.Constant(true); Type TType = typeof(T);…