新建 LINQ to SQL类 ,选择数据库,自动生成类;
using(DBDataContext con=new DBDataContext())
表名为people
增:con.people.InsertOnSubmit(object);
con.SubmitChanges();
con.InsertAllOnSubmit(); --放集合;
删:con.people.DeleteOnSubmit(object);
con.SubmitChanges();
con.DeleteAllOnSubmit(); --放集合
改:people p= con.people.FirstOrDefault();
p.name='ddd';
con.SubmitChanges();
查:con.people.ToList();
开头:StartsWith()
结尾:EndsWith()
模糊:Contains()
个数:Count
最大值:Max(r => r.price)
最小值:Min(r => r.price)
平均值:Average(r => r.price)
求和:Sum(r => r.price)
升序:OrderBy(r => r.price);
降序:OrderByDescending(r => r.price)
分页:Skip(PageCount * (a - 1)).Take(PageCount)
IQueryable接口与IEnumberable接口的区别:
IEnumerable<T> 泛型类在调用自己的SKip 和 Take 等扩展方法之前数据就已经加载在本地内存里了,而IQueryable<T> 是将Skip ,take 这些方法表达式翻译成T-SQL语句之后再向SQL服务器发送命令,它并不是把所有数据都加载到内存里来才进行条件过滤。