C# LINQ(3)】的更多相关文章

2  LINQ TO SQL(代码下载)      我们以一个简单的销售的业务数据库为例子         表结构很简单:Users(购买者(用户)表),Products(产品信息表),Sales(销售表),ReturnSales(退货信息表) 在Sales表中,我们就知道谁买的了(根据UserId),然后买的时间,买的产品(根据ProductCode),Sales和ReturnSales一样的结构的 接下来我们按照 小孩LINQ(四)中的方法建立好dbml文件,以便好操作数据. 准备工作后完成…
用于对内存中的数据做并行运算,也就是说其只支持 LINQ to Object 的并行运算 一.AsParallel(并行化) 就是在集合后加个AsParallel(). 例如: , ); == ); foreach (var i in result) Console.WriteLine(i); 下面我们模拟给ConcurrentDictionary灌入1500w条记录,看看串行和并行效率上的差异,注意我的老爷机是2个硬件线程. static void Main(string[] args) {…
1  LINQ TO XML(代码下载)        准备:新建项目 linq_Ch7控制台程序,新建一个XML文件夹,我们就轻松地学习一下吧          XDocument         创建XML文档          XDeclaration       创建XML中的声明          XElement             创建XML中的元素          XAttribute            创建XML中元素的属性          XComment    …
1  LINQ TO Objects续(代码下载)      新建项目 linq_Ch2控制台程序,新建一个Entity文件夹    1.1 学生成绩查询(练习Join)         有三张表如下:学生表,班级表,成绩表.接下来我们按照这个在Entity文件夹建立3个实体类,类名跟表名一样. public class StudentInfo { /// <summary> /// 学生编号 /// </summary> public int StuId { get; set;…
概述 LINQ是.NET框架的扩展,它允许我们以使用SQL查询数据库的方式来查询数据集合. 使用LINQ,你可以从数据库.程序对象集合以及XML文档中查询数据. 需要注意的是,对于比较简单的功能,与其使用 Linq,还不如使用 Lambda 表达式,对于相对简单的功能,使用 Lambda 表达式更加的简洁明了,比如: //使用 Linq select r; //使用 Lambda ); //对应的 SQL 语句 string sql = "select * from Am_recProSchem…
为什么需要Linq?(摘自原文) 读者会发现LINQ着眼于解决编程语言和数据库之间广发存在的不统一问题. 1.常见的问题,使用.NET Framework Class Library(FCL)提供了ADO.NET,开发人员必须显式地操作数据库中的表.记录.列,而当下流行的C#语言却都是面向对象的. 为了解决上面说的ADO.NET的问题,当然可以使用某些对象/关系映射工具,但这些工具也不是完美的,存在着自身的限制.例如,用来访问数据库的工具一般没法处理其他数据源,比如XML. 并且有一件事情只用微…
最近做数据查询,发现linq 真的比我 印象中  要强大的多,实用的多,所以 我决定  要与linq  来一场  深入交流, 因为linq的基础用法 可以百度一大摞,我就记录点不一样的,结合我做项目使用的. 什么是linq? linq(Language Integrated Query,  语言集成查询) 优点:1)linq提供了不同数据源的抽象层,所以可以使用相同的语法访问不同的数据源 2)linq在一定程度上降低了访问数据的复杂度(对于这点深有感触) 3)linq在编译的时候就进行检查,而不…
1.改变数据库某一字段的属性 db.tableName.ToList().ForEach(x => x.State = false); 2.排序 db.tableName..toList().OrderByDescending(x=>x.CDate).AsQueryable();//按时间降序排列 (1)OrderBy 按升序对值进行排序. (2)OrderByDescending 按降序对值进行排序(3)ThenBy 按升序执行次要排序. (4)ThenByDescending 按降序执行次…
1  LINQ TO SQL(代码下载)       我们以一个酒店管理系统的数据库为例子         表结构很简单:GuestInfo(客人信息表),Room(房间表),RoomType(房间类型表),HotelInfo(每个月盈利信息)          整体就是,Room中有个房间类型ID的外键,客人表中有个房间的ID的外键.月盈利信息先不管          准备:新建项目 linq_Ch4控制台程序,新建DB文件夹           右击DB文件夹,添加→新建项         …
1  LINQ TO Objects续2(代码下载)      新建项目 linq_Ch3控制台程序    1.1 操作字符串        ①查找字符串中包含的大写字母,字符串是由多个char类型组成 //1.查找字符串中包含的大写字母 string string1 = "int I=10;string String1=(I%2==0?\"偶数\":\"奇数\")"; //过滤字符换中所有的大写字母,判断小写用IsLetter,数字用IsDig…
1  LINQ准备(代码下载) 新建项目 linq_Ch1控制台程序,新建一个Entity文件夹     1.1 对象初始化器     在Entity新建一个类Student,代码如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace linq_Ch1.Entity { public class Student { /// <summary> /// 学…
开始写代码了,我会把自己的代码粘贴在这里,好不容易可以实践了,可是不能偷懒的. string[] words = { "hello", "wonderful", "linq", "beautiful", "world" }; var shortWords = from word in words select word; foreach (var word in shortWords) { Console.…
应该是可以敲代码了,Linq是.NET Framework3.5的功能,该版本的框架同时发布了新增的和更新了得类库,也为C#和VB.NET语言提供了新版本的编译器.Linq的功能支持源于编译器和类库,而不是运行时. 有一点很重要,就是虽然C#和VB.NET语言被大大增强,且.NET Framework本身也扩充了一些新的类库,但.NET运行时(CLR)仍旧没有改变. C#3.0和VB.NET9.0需要新版本的编译器,不过其运行时却不需要改变,仍旧是原先的2.0版本. 也就是说,使用LINQ编译出…
LINQ 查询 var query = from r in Formula1.GetChampions() where r.Country == "Brazil" orderby r.Wins descending select r; foreach (Racer racer in query) { Console.WriteLine("{0:A}", racer); } 扩展方法 LINQ为IEnumerable<T>接口提供各种扩展方法,以便用户实现…
2  LINQ TO SQL完结(代码下载)      我们还是接着上次那个简单的销售的业务数据库为例子,打开上次那个例子linq_Ch5 2.1 当数据库中的表建立了主外键 ①根据主键获取子表信息    将Sales表中的UserID和Users表中的ID建立主外键关系,打开数据库,新建查询,执行下面的T-sql alter table Sales add constraint FK_UserID foreign key(UserId) REFERENCES Users(Id) go    当…
摘自<linq实战>原文: 软件很简单.它可以归结为两件事情:代码和数据. 开发软件却并非那么简单,其中很重要的一项任务就是编写处理数据的代码. 无论选择了哪种语言,在程序开发得某个时候你将不得不开始与数据打交道.这些数据可能来自于磁盘上的文件.数据库中的表或网络上的XML文档,甚至是上述各项的组合.归根结底,在任何一个软件项目中,都需要管理数据. Linq是什么? Linq的设计目的就是为了解决在.NET编程语言中使用数据库时,不厌其烦地编写数据访问和数据持久化代码,这样的问题. 对于Lin…
linq的功能是什么? 它将极大地改变应用程序或组件处理数据的方式.这是第一个功能. LINQ to Objects.LINQ to SQL和LINQ to XML,是LINQ三大主要功能,当然LINQ也可以支持其他的数据源.为啥Linq可以这样支持,我不知道. 上述三大主要功能均建立在一个公共的LINQ基础之上,包括查询操作符.查询表达式和表达式书等构建块,为LINQ的功能提供了良好的可扩展性.是不是Linq可以支持其他数据源,和这些构建快有关系呢.这三个构建块,我是不清楚什么东西的,书中接下…
目前都是说的单数据差距,如果多数据进行查询LINQ该如何呢? 那么LINQ就应该使用关键字 join on equals 现有代码: static void Main(string[] args) { var StrArray = new[] { "A","B","C","D","E","F"}; ,,,,,,,,, }; var list = from i in NumArray jo…
where作为LINQ的条件关键字. where的右面是表达式 表达式可以方法返回值,但是where的右面最终是一个可检测真假的表达式 代码: static void Main(string[] args) { ,,,,,,,,, }; var list = from i in NumArray where IsMethod(i) group i by i< into iList from max in iList select max; foreach (var item in list) {…
我们还是接着讨论一下group by 这一章节讨论group的本质:分组. 分组之后进行存储或者查询. 这个时候就要用一个新的关键字:into 这个之后就group就不作为结尾了. 必须重写另起select/group结尾. ,,,,,,,,, }; var list = from i in NumArray && i < group i by i< into iList from max in iList select max; foreach (var item in li…
前一章的代码LINQ都是以select结尾. 之前也说过可以group结尾. 那么怎么使用呢? 还是一样的条件,查询小于5大于0的元素 代码: ,,,,,,,,, }; var list = from i in NumArray && i < group i by i; foreach (var item in list) foreach(var s in item) Console.Write($" {s}"); Console.ReadKey(); LINQ的…
今天不忙,没什么事情,继续写写随笔. 之前的文章写到了EF,很多人留言EF的操作用什么?  今天,就继续给大家分享EF的操作, Linq . 先从Linq操作Object内置对象开始 从Linq的基础应用开始. 自从C#3.5 以后,出现了一个新的特性, 一个名为 var 的关键字, 允许程序无须显示的定义一个局部变量,在使用var声明变量时,编译器会通过该变量初始化代码来推断实际类型,比如 var first = 1 ; 此时是int 类型 var secend ="1"; 此时是s…
文章已经迁移到:http://www.ayjs.net/2013/08/68/ 文章已经迁移到:http://www.ayjs.net/2013/08/68/ 文章已经迁移到:http://www.ayjs.net/2013/08/68/ 文章已经迁移到:http://www.ayjs.net/2013/08/68/ 文章已经迁移到:http://www.ayjs.net/2013/08/68/ 文章已经迁移到:http://www.ayjs.net/2013/08/68/ 文章已经迁移到:ht…
问: I have two tables, movies and categories, and I get an ordered list by categoryID first and then by Name.The movie table has three columns, ID, Name, and CategoryID. The category table two has columns, ID, and Name. I tried something like the foll…
功能查询起止日期范围内连续的月份列表. /* Period */ cbxPeriod.DataSource = Enumerable.Range(, ).Select(t => DateTime.Today.AddMonths(-t)).Select(t => new KeyValuePair<string, string>(t.ToString("yyyy-MM"), t.ToString("yyyy-MM"))).ToList(); cb…
本文将从什么是LINQ(What).为什么使用LINQ(Why)以及如何使用LINQ(How)三个方面来进行说明. 1.什么是LINQ LINQ(Language Integrated Query)是 Visual Studio 2008 中引入的一组功能,可为 C# 和 Visual Basic 语言语法提供强大的查询功能. LINQ 引入了标准易学的数据查询和更新模式,可以扩展该方法来支持任何类型的数据存储. Visual Studio 包括 LINQ 提供程序集,后者支持将 LINQ 与…
示例代码下载:Linq之旅:Linq入门详解(Linq to Objects) 本博文详细介绍 .NET 3.5 中引入的重要功能:Language Integrated Query(LINQ,语言集成查询).通过LINQ,我们可以使用相同API操作不同的数据源.接下来就让我们看看LINQ是什么以及如何使用? 再此之前,需要先了解的相关技术 1.        隐式类型.匿名类型.对象初始化器 1)        隐式类型,使用var关键字创建,C#编译器会根据用于初始化局部变量的初始值推断出变…
问题 你想为多次用到的查询提高性能,而且你不想添加额外的编码或配置. 解决方案 假设你有如Figure 13-8 所示的模型 Figure 13-8. A model with an Associate and its related Paycheck 在这个模型里,每个Associate(同事)有0到多个Paychecks(薪水),你有一个LINQ查询,它在你的整个应用程序中重复使用,你想仅编译一次,然后复用这个已编译的版本,通过这种方式来提高这个查询性能. 当针对数据库执行时,EF必须把你的…
在本篇中,我们将接着上一篇“LINQ to SQL 和 Entity Framework(上)”的内容,继续使用LINQ to SQL和Entity Framework来实践“解释查询”,学习这些技术的关键特性.我们在此关注的是LINQ to SQL和Entity Framework中的”LINQ”部分,并会比较这两种技术的相同和不同之处.通过我们之前介绍的LINQ知识还有将来会讨论的更多LINQ Operators,相信阅者能针对LINQ to SQL和Entity Framework写出优雅…
在上一篇中,我们从理论和概念上详细的了解了LINQ的第二种架构“解释查询”.在这接下来的二个篇章中,我们将使用LINQ to SQL和Entity Framework来实践“解释查询”,学习这些技术的关键特性.在本系列文章中,我不准备事无巨细的讨论LINQ to SQL和Entity Framework的方方面面,毕竟那样需要太多的篇幅,也会让我们从LINQ上面转移注意力,况且,园子里也有不少介绍LINQ to SQL和Entity Framework的好文章.我们在此关注的是LINQ to S…