1、Linq是C#的一个分支
1.在.NET Framework 3.5中提供了Linq 支持后.
2. LINQ的读法:lin k 很多人会误读为lin Q
3. LINQ的全称:Language-Integrated Query
4. LINQ的查询关键词: from、where、 select、group、into、orderby、join、let、in、on、equals、by、ascending、descending 14个 https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/query-keywords
2、Linq需要的基础知识
- var
- 匿名类型/匿名方法
- 自动属性
- 委托/泛型的委托
- lambda
- 扩展方法
- 对象初始化器
3、Linq的作用
- linq 【对象查询,数据查询,xml查询, xxx】
- linq 其实就是使用扩展方法的lambda表达式。
4、Linq to object
-
linq to sql/ ado.net entityframework
这两个都是用linq的方式读取/操作数据库。
原来: 我们是写sql代码的形式操作数据库。
表达式树【expression】,将lamada用树的形式存储起来,这样就方便将lambda表达式
解析成sql。 -
linq to dataset => datatable
原来:我们操作dataset/datatable 有foeach的形式。
现在:我们就可以用linq的方式了。 -
linq to xml
原来:用xmlwriter和xmlreader的形式来操作xml。
现在:我们用linq中的XDocument和XElement这样两种方式操作xml。
当然,大家一定要知道 linq to xml 其实是对xmlwriter的一种高层封装。 -
linq to xxx
这里的xxx需要自己去实现IQueryable接口。
5、参考资料
- Linq编程技术内幕
未完待续