C#数据操作LINQ
Linq是language integrated query的缩写,即“语言集成查询”之意。
Linq主要包含四个组件,Linq to object、Linq to XML、Linq to Dataset和Linq to SQL。本文仅涉及前两个。
代码示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq; namespace Linq
{
class Program
{
static void Main(string[] args)
{
//初始化要查询的数据
List<int> inputArray = new List<int>();
for (int i = ; i < ; i++)
{
inputArray.Add(i);
}
Console.WriteLine("使用Linq方法来对集合对象查询,查询结果为:");
LinqQuery(inputArray); Console.WriteLine("\n\r使用Linq方法来查询xml:\n");
LinqToXML();
Console.ReadKey();
}
//使用linq返回集合中为偶数的元素
private static void LinqQuery(List<int> collection)
{
var queryResult = from item in collection
where item % == || item == //组合查询条件
orderby item descending//倒序排序
select item;
//输出结果
foreach (var item in queryResult)
{
Console.WriteLine(item.ToString() + " ");
}
}
//初始化xml数据
private static string xmlstring =
@"<books>
<book>
<author>Jack Herrington</author>
<title>PHP Hacks</title>
<publisher>O'Reilly</publisher>
</book>
<book>
<author>Jack Herrington</author>
<title>Podcasting Hacks</title>
<publisher>O'Reilly</publisher>
</book>
<book>
<author>藏锋</author>
<title>深入在线工具</title>
<publisher>啦啦啦出版社</publisher>
</book>
</books>";
/// <summary>
/// 使用Linq对XML文件进行查询
/// </summary>
private static void LinqToXML()
{
//导入xml
XElement xmlDoc = XElement.Parse(xmlstring); //创建查询,获取作者为“王小为”的元素
var queryResult = from element in xmlDoc.Elements("book")
where element.Element("author").Value == "藏锋"
select element; //输出查询结果
foreach (var item in queryResult)
{
Console.WriteLine("书名:" + item.Element("title").Value + " 作者:" + item.Element("author").Value + " 出版社:" + item.Element("publisher").Value);
}
}
}
}
执行结果:

C#数据操作LINQ的更多相关文章
- c#搭建服务端 简单中最高效的数据操作Linq (4)
.NET F 3.5之后提出的linq to sql 概念,大大的简化了对于数据对象的操作,可以通过简单的语法直接操作数据对象,如List,Linq to sql类 等等. 1.使用Linq to s ...
- Code First开发系列之管理数据库创建,填充种子数据以及LINQ操作详解
返回<8天掌握EF的Code First开发>总目录 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LINQ to ...
- 8天掌握EF的Code First开发系列之3 管理数据库创建,填充种子数据以及LINQ操作详解
本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 管理数据库创建 管理数据库连接 管理数据库初始化 填充种子数据 LINQ to Entities详解 什么是LI ...
- Atitit.数据操作dsl 的设计 ---linq 方案
Atitit.数据操作dsl 的设计 ---linq 方案 1.1. sql与api方式1 1.2. Linq方案与stream方案的选择,1 1.3. 前缀表达式 vs 中缀表达式1 1.4. 要不 ...
- StackExchange.Redis帮助类解决方案RedisRepository封装(字符串类型数据操作)
本文版权归博客园和作者本人共同所有,转载和爬虫请注明原文链接 http://www.cnblogs.com/tdws/tag/NoSql/ 目录 一.基础配置封装 二.String字符串类型数据操作封 ...
- Entity Framework 5.0系列之数据操作
Entity Framework将概念模型中定义的实体和关系映射到数据源,利用实体框架可以将数据源返回的数据具体化为对象:跟踪对象所做的更改:并发处理:将对象更改传播到数据源等.今天我们就一起讨论如何 ...
- MapObject shape数据操作
利用MO 的GeoDataset .DataConnection Recordset 进行数据操作 在MO中.使用GeoDataset对象和DataConnection 对象来连接和读取地理数据. ...
- 初始ADO.NET数据操作
以下介绍直接来源与百度百科,介绍十分全面和详细,作为小菜的我们没有理由不看完这些枯燥的介绍原有: ADO.NET的名称起源于ADO(ActiveX Data Objects),是一个COM组件库,用于 ...
- Farseer.net轻量级ORM开源框架 V1.x 入门篇:表的数据操作
导航 目 录:Farseer.net轻量级ORM开源框架 目录 上一篇:Farseer.net轻量级ORM开源框架 V1.x 入门篇:表实体类映射 下一篇:Farseer.net轻量级ORM开源框 ...
随机推荐
- 也用 Log4Net 之将日志记录到数据库的后台实现 (二)
也用 Log4Net 之将日志记录到数据库的后台实现 (二) 大家下午好,昨天讲了配置,今天我们讲讲后台实现,在完成了后台实现后,我们才能真正意义上的解决把自定义属性字段值录入到数据库中. 在开写之 ...
- Mtom Encoding in WCF
http://www.codeproject.com/Articles/632101/Mtom-Encoding-in-WCF http://msdn.microsoft.com/zh-cn/libr ...
- java 多线程下载
import java.io.ByteArrayOutputStream; import java.io.InputStream; public class StreamTool { /** * 把一 ...
- Ofbiz 10.04 + eclipse 安装与配置
1.下载 ofbiz 10.04:http://ofbiz.apache.org/download.html: 2.下载 freemarker-2.3.15 eclipse 插件(FreeMarker ...
- 如何获取android app的Activity
方法一 如有你有待测项目的源码,那么直接查看源码就好.如果没有,那么请联系有源码的同学,这是推荐方法. 方法二 直接把apk后缀改为zip格式,打开压缩包后再打开AndroidManifest.x ...
- double free or corruption的原因
问题描述: 使用hiredisCluster 运行报错,错误截图如下: 通过分析hiredis源代码发现,在net.c的源文件中283行代码: c->tcp.host = strdup(addr ...
- MFC定时器使用
MFC定时器实现方法 方法一:CWnd类提供的成员函数SetTimer实现定时器功能,只能在CWnd类或其派生类中调用. 方法二:Windows API函数SetTimer来实现. MFC定时器 启动 ...
- cocos2d-x编译到android平台后,增加返回键和菜单键支持
在头文件中增加函数 virtual void keyBackClicked();//android返回键 virtual void keyMenuClicked();//android菜单键 在ini ...
- [学姿势]使用AngularJS+CodeIgniter框架经验谈
这篇文章作为总结总结7月份参与项目时遇到的新东西和问题,包括这两个框架(CodeIgniter.AngularJS)以及两个功能实现.有前端调试显示动态认证,也有用php实现功能模块. 1.添加设备 ...
- Objective-C Runtime 运行时之六:拾遗
super 在Objective-C中,如果我们需要在类的方法中调用父类的方法时,通常都会用到super,如下所示: @interface MyViewController: UIViewContro ...