C#—LINQ详解及汇总

LINQ详解及汇总

LINQ(Language Integrated Query)是微软的一项技术,允许开发者以一种简洁的方式查询和操作数据,支持多种数据源,包括对象、数据库、XML和数据集。LINQ定义了约40个查询操作符,如select、from、in、where以及order by等,这些操作符可以编写查询语句,处理各种类型的数据‌。

LINQ可以用最少的代码对数据源执行复杂的筛选、排序和分组操作。使用相同的基本查询表达式模式来查询和转换 SQL数据库、ADO.NET数据集、XML文档和流以及,NET集合中的数据。

查询表达式必须以from 子句开头,并且必须以select或group 子句结尾。在第一个 from 子

句和最后一个select或group 子句之间,查询表达式可以包含一个或多个下列可选子句。LINQ查询代码中关键字必须小写。

LINQ的不同实现形式及其现状:
  1. LINQ to Objects‌:用于操作内存中的对象集合。
  2. ‌LINQ to SQL‌:用于查询数据库。然而,LINQ to SQL已经停止维护,被Entity Framework(EF)取代‌。
  3. ‌LINQ to Datasets‌:用于操作数据集。
  4. ‌LINQ to Entities‌:用于查询实体框架中的数据。
  5. ‌LINQ to XML/XSD‌:用于操作XML数据。
  6. ‌LINQ to Data Source‌:用于查询数据源。

基本步骤

  • 创建数据模型:使用 LINQ to SQL 工具自动生成或手动创建与数据库表对应的 C# 类。
  • 执行查询:使用 LINQ 查询语法来检索、更新、插入或删除数据。
  • 提交更改:将对数据所做的更改同步回数据库。

LINQ数据源

  • 应用程序始终将源数据视为一个lEnumerable<T>或IQueryable<T>集合。在 LINQtoXML中,源数据显示为一个IEnumerable<XElement>。
  • 在 LINQto DataSet中,它是一个IEnumerable<DataRow>。在 LINQ toSQL中,它是定义用来表示SQL表中数据的任何自定义对象的lEnumerable 或lQueryable。
  • (‌IEnumerable<T> 或 IQueryable<T>‌:这是大多数LINQ查询的返回值类型。它们表示一个序列,可以包含零个、一个或多个元素。)

LINQ组成部分(大概):

相关推荐
听风的码11 分钟前
Vue2封装Axios
开发语言·前端·javascript·vue.js
素界UI设计1 小时前
建筑行业变革:用Three.js构建BIM数据可视化孪生平台
开发语言·javascript·信息可视化
王廷胡_白嫖帝2 小时前
Qt个人通讯录项目开发教程 - 从零开始构建联系人管理系统
开发语言·qt
疯狂的代M夫3 小时前
C++对象的内存布局
开发语言·c++
mit6.8243 小时前
Linux下C#项目构建
开发语言·c#
群联云防护小杜3 小时前
从一次 DDoS 的“死亡回放”看现代攻击链的进化
开发语言·python·linq
霸敛3 小时前
好家园房产中介网后台管理完整(python+flask+mysql)
开发语言·python·flask
Momentary_SixthSense4 小时前
RESP协议
java·开发语言·javascript·redis·后端·python·mysql
Nita.4 小时前
.NET 中的延迟初始化:Lazy<T> 与LazyInitializer
c#·.net
only-lucky4 小时前
C++中的 Eigen库使用
开发语言·c++