Linq的其他方面

简介: 前面的几篇文章简述了LINQ的基本概念 Linq的概念解析 http://www.cnblogs.com/2018/archive/2010/11/12/1875850.html LINQ 概述、语法及实例 http://www.

前面的几篇文章简述了LINQ的基本概念

Linq的概念解析

http://www.cnblogs.com/2018/archive/2010/11/12/1875850.html

LINQ 概述、语法及实例

http://www.cnblogs.com/2018/archive/2010/11/14/1877144.html

深入理解linq的参考例子

http://www.cnblogs.com/2018/archive/2010/11/16/1878675.html

 

实际使用中,linq的其他方面做个简述,以备使用中参考

Linq to Everything

微软的框架包含的:

Linq to object ; linq to xml ; linq to sql

 

Codeplex.com社区有很多的linq to ***

基于这些Provider,可以使用linq语法实现各种事情

Linq to object

对于实现了IEnumerable的对象操作,使用查询操作符和查询表达式操作

Linq to xml

特殊的部分:XmlObject XNode XElement XAttribute XText XDocument XStreamingElement等

建立XML

Books.txt

0735621632,CLR via C#,Jeffrey Richter,Microsoft Press,02-22-2006,59.99

0321127420,Patterns Of Enterprise Application Architecture,Martin Fowler,Addison-Wesley Professional,11-05-2002,54.99

 

XElement xml = new XElement("books",

        from line in File.ReadAllLines("books.txt")

        where !line.StartsWith("#")

        let items = line.Split(',')

        select new XElement("book",

                              new XElement("title", items[1]),

                                   new XElement("authors",

                                   from authorFullName in items[2].Split(';')

                                   let authorNameParts = authorFullName.Split(' ')

                                   select new XElement("author",

                                     new XElement("firstName", authorNameParts[0]),

                                          new XElement("lastName", authorNameParts[1])

                                   )

                            ),

                            new XElement("publisher", items[3]),

                            new XElement("publicationDate", items[4]),

                            new XElement("price", items[5]),

                            new XElement("isbn", items[0])

                            )

      );

 

XML处理

<?xml version="1.0" encoding="utf-8" ?>

<books>

       <book>

              <title>Linq in Action</title>

              <author>Fabrice Marguerie</author>

              <author>Steve Eichert</author>

              <publisher>Manning</publisher>

              <rating>4</rating>

       </book>

 

                     XElement books = XElement.Load("books.xml");

 

                     var manningBooks =

                                          from b in books.Elements("book")

                                          where (string) b.Element("publisher") == "Manning"

                                          orderby (string) b.Element("title")

                                          select b.Element("title"); 

linq to sql

现在一般基于Entity Framework建模形式,可视化实现更方便一些。

System.Data.Linq.DataContext

 

PLINQ

Parallel LINQ (PLINQ) is a parallel implementation of LINQ to Objects.

在现在的多核CPU上,这个很有用,可充分利用CPU的能力。

相关文章
|
7月前
|
机器学习/深度学习 安全 开发工具
产品动态丨阿里云计算巢月刊-2025年第2期
让优秀的企业软件生于云、长于云
|
Java 应用服务中间件 Maven
idea+maven+tomcat+spring 创建一个jsp项目
这篇文章介绍了如何在IntelliJ IDEA中使用Maven和Tomcat创建一个JSP项目,包括配置Maven依赖、设置Tomcat服务器、编写JSP页面、创建控制器和配置文件,以及项目的运行结果。
755 0
idea+maven+tomcat+spring 创建一个jsp项目
|
敏捷开发 测试技术 持续交付
探索自动化测试:从基础到高级
【10月更文挑战第35天】在软件质量的保证过程中,自动化测试以其高效和可重复性成为不可或缺的一环。本文旨在通过简明的语言和实际案例引导读者了解自动化测试的核心概念、工具选择与应用,以及如何实现从入门到精通的过渡。我们将一起探讨如何将自动化测试策略融入日常开发流程中,提升测试效率,同时确保产品质量。无论你是初学者还是有经验的开发者,这篇文章都将为你提供有价值的见解和技巧。
532 3
|
数据采集 传感器 大数据
大数据中数据采集 (Data Collection)
【10月更文挑战第17天】
836 2
|
缓存 图形学 芯片
CPU避坑指南——1、CPU基础知识-型号
CPU避坑指南——1、CPU基础知识-型号
365 0
|
数据可视化 数据挖掘 数据处理
【100天精通Python】Day58:Python 数据分析_Pandas时间序列数据处理,创建和解析时间数据pd.to_datetime(),.loc[],resample() 用法示例
【100天精通Python】Day58:Python 数据分析_Pandas时间序列数据处理,创建和解析时间数据pd.to_datetime(),.loc[],resample() 用法示例
753 0
|
编解码
MATLAB | SCI绘图配色第三期 | 二维柱状图 | 一人之下
MATLAB | SCI绘图配色第三期 | 二维柱状图 | 一人之下
325 0
|
存储 NoSQL 安全
分布式锁实现原理与最佳实践(5)
分布式锁实现原理与最佳实践
201 0
分布式锁实现原理与最佳实践(5)
|
消息中间件 Java
RabbitMQ中的Binding是什么?它的作用是什么?
RabbitMQ中的Binding是什么?它的作用是什么?
412 0
|
编译器 Linux C++
关于inline函数声明和定义为什么不可以分离
关于inline函数声明和定义为什么不可以分离
271 0