随笔分类 - LINQ
摘要:1. 读取XML文件 XDocument和XElement类都提供了导入XML文件的Load()方法,可以读取XML文件的内容,并转换为XDocument或XElement类的实例。 示例XML文件:Product.xml 1 LINQ to XML 10 2...
阅读全文
摘要:LINQ to XML操作XML文件的方法,如创建XML文件、添加新的元素到XML文件中、修改XML文件中的元素、删除XML文件中的元素等。1. 创建XML文件string xmlFilePath = Server.MapPath("Data/Product.xml");XDocument do...
阅读全文
摘要:LINQ to XML由System.Xml.Linq namespace实现,该namespace包含处理XML时用到的所有类。在使用LINQ to XML时需要添加System.Xml.Linq.dll的引用,在代码声明中添加using:using System.Xml.Linq;1. Sy...
阅读全文
摘要:1. 一对多var expr = context.Products .Where(p => p.Category.CategoryName == "LINQ to SQL" && p.UnitPrice > 10m) .Select(p => new { p.Prod...
阅读全文
摘要:1. Takevar expr = context.Products .Take(10);var expr = (from p in context.Products select p) .Take(10);SELECT TOP (10) [...
阅读全文
摘要:1. Concat 单列Concatvar expr = (from p in context.Products select p.ProductName) .Concat( from c in context.Categories...
阅读全文
摘要:1. Any 返回没有Product的Categoryvar expr = from c in context.Categories where !c.Products.Any() select c;SELECT [Extent1].[Categ...
阅读全文
摘要:1. 简单形式var expr = from p in context.Products group p by p.CategoryID into g select g;foreach (var item in expr){ Console.WriteL...
阅读全文
摘要:1. CASE WHEN ... THEN ...var expr = from p in context.Products select new { 商品ID = p.ProductID, ...
阅读全文
摘要:1. 单一条件查询var expr = context.Products .Where(p => p.ProductName == "LINQ to SQL");SELECT [Extent1].[ProductID] AS [ProductID], [Extent1].[Ca...
阅读全文
摘要:1. 查询全部字段using (NorthwindContext context = new NorthwindContext()){ var expr = context.Products; foreach (var item in expr) { Console....
阅读全文
摘要:LINQ to DataSet需要使用System.Core.dll、System.Data.dll和System.Data.DataSetExtensions.dll,在项目中添加引用System.Data和System.Data.DataSetExtensions。1. DataTable读...
阅读全文
摘要:LINQ to ADO.NET 包括两种独立的技术: LINQ to DataSet 和 LINQ to SQL。 使用 LINQ to DataSet 可以对DataSet 执行丰富而优化的查询,而使用 LINQ to SQL 可以直接查询 SQL Server 数据库架构。 由 LINQ ...
阅读全文
摘要:分区是指将一个单一的输入序列划分成两个或多个部分或序列,同时不会对输入元素重排序,返回一个新形成的部分。LINQ分割操作符包括Skip、SkipWhile、Take和TakeWhile。1. Skip Skip操作符会跳过一些元素到达序列中的一个指定的位置,将会略过特定数目的若干元素并且返回其...
阅读全文
摘要:量词操作符返回一个Boolean值,指示序列中是否存在部分或全部元素符号指定条件。LINQ中量词操作符包括:All、Any和Contains。1. All All操作符判定在集合中是否所有的值都满足指定的条件。返回值是一个Boolean值。如果所有值都满足条件则返回true,否则返回false...
阅读全文
摘要:相等操作符通过比较两个序列来检查它们相应的元素是否相同。如果两个序列有相同的元素,并且对应元素的值相同,则认为这两个序列是相等的。 SequenceEqual操作符判定两个集合是否相等。判定是通过并行地枚举两个数据源并比较相应元素来完成的。返回值是一个Boolean值——如果两个集合相等则返回...
阅读全文
摘要:元素操作符从一个序列返回单个指定的元素。1.DefaultIfEmpty DefaultIfEmpty操作符将一个空集合替换为包含默认的单个值的集合。在返回序列为空且又需要返回一些对象时,可以通过该操作符返回一个默认值。1>. 原型定义public static IQueryable Defa...
阅读全文
摘要:转换是指将输入对象的类型转变为序列的动作。1.AsEnumerable AsEnumerable操作符将查询的输入以IEnumberable(T)类型返回。2. Cast Cast操作符将IEnumberable集合中的元素转换为指定的类型,当Cast运算符无法将源类型转换为目标类型时将抛出...
阅读全文
摘要:生成操作符从现有序列值中创建新的序列。1. Empty Empty操作符返回一个指定类型的空集。1>. 原型定义public static IEnumerable Empty();2>. 示例var q = Enumerable.Empty();Console.WriteLine(q == n...
阅读全文
摘要:集合操作符对元素的集合或序列集合进行操作,并返回一个集合。LINQ共有4种集合查询操作符:Distinct、Union、Intersect和Except。1. Distinct Distinct操作符删除集合中重复的值,并返回该集合中互不相同的元素。1>. 原型定义public static ...
阅读全文