[11] Linq
Jason 薛
这个作者很懒,什么都没留下…
展开
-
LINQ to SQL 在 Visual Studio 2008 中的简单应用
在.Net Framework 3.5 中,最激动人心的就是增加了LINQ功能,LINQ在数据集成的基础上提供了新的轻型方式。有了LINQ,我们创建的查询现在就编程了.Net 框架的一个成员,在对要操作的数据存储执行查询时,会很快发现他们现在的操作方式类似于系统中的类型。这说明,现在可以使用任意兼容.Net 的语言来查询底层的数据存储,这在以前是不可能的。根据要在应用程序中处理的底层数据的不同转载 2011-11-03 21:05:04 · 366 阅读 · 0 评论 -
LINQ标准查询操作符学习笔记四
11、分区 扩展方法Take()和Skip()等用于分区操作,这些操作可用于数据分页。在下面的Linq查询中,把扩展方法添加到查询最后,Skip()方法或略掉根据分页大小和页数得到的项数,Take()方法根据分页大小提取一定数目的项:int pagesize = 5;int numberPages = (int)Math.Ceiling(Formula1.GetChampions().C转载 2011-11-02 21:29:23 · 460 阅读 · 0 评论 -
LINQ to XML 结合 LINQ to SQL 使用
在是用LINQ的时候可以把多个数据源混合。下面是用LINQ to SQL 查询 Northwind数据库中的表结果再把提取的结果转换成XML文档。建立一个Northwind.dbml 详细可以看LINQ to SQL从服务器资源管理器拖动两个表到设计器中,设计器结果如下,并自动建立关联代码如下: public void MyLingSqlAndXml(){转载 2011-11-03 21:43:32 · 945 阅读 · 0 评论 -
LINQ to XML 用 LINQ 查询 XML
将一个已知的XML放到XDocument 对象当中使用LINQ 查询非常的容易,下面是一个例子。查找XML文档中的所有PERSONA元素显示结果个数,并遍历输出其值public void MyDescendants() { XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml"));转载 2011-11-03 21:40:28 · 2756 阅读 · 1 评论 -
LINQ to SQL 不使用O/R设计器建表对象
创建自己的定制对象首先要建立一个用于展示Customer的类,代码如下:using System.Data.Linq.Mapping; //需要加此引用namespace LINQtoSQL{ [Table(Name = "Customers")] //制定Table特性表示表类,Name定义了在数据库中使用的表名 public class Customer转载 2011-11-03 21:20:04 · 655 阅读 · 0 评论 -
LINQ to XML 操作XML文档
使用 XDocument 对象的 Element 方法,获取制定层次结构中指定一个元素的值public void MyDocElement() { XDocument xdoc = XDocument.Load(Server.MapPath("hamlet.xml")); //查找地址的元素转载 2011-11-03 21:41:45 · 535 阅读 · 0 评论 -
LINQ标准查询操作符(五)
十二、相等操作符如果两个序列的对应元素相等且这两个序列具有相同数量的元素,则视这两个序列相等。SequenceEqual方法通过并行地枚举两个数据源并比较相应元素来判断两个序列是否相等。如果两个序列完全相等,返回true,否则返回false。以下代码是SequenceEqual方法的实现过程:public static bool SequenceEqual(this IEnumerab转载 2011-11-03 14:05:59 · 625 阅读 · 0 评论 -
LINQ标准查询操作符学习笔记三
6、对筛选结果进行分组使用group子句和GroupBy()扩展方法可以对查询结果进行分组。下边的例子是将赛车冠军按照国家进行分组,并列出一个国家赛车冠军的总数: //简ò单蹋inq分?组哩? var query = from r in Formula1.GetChampions() grou转载 2011-11-02 21:27:18 · 422 阅读 · 0 评论 -
LINQ标准查询操作符学习笔记二
三、使用Linq进行查询有了这些预备知识和实体类,我们就可以使用Linq进行查询了。 1、简单的筛选 使用Where子句可以对数据源进行简单的筛选。下变例子是找出至少赢得15场比赛的奥地利车手: /// /// 1、最简单的查询 /// static void LinqQuery1()转载 2011-11-02 21:23:54 · 373 阅读 · 0 评论 -
LINQ标准查询操作符学习笔记一
Linq是语言集成查询的简称。Linq简化了语言查询,是的程序员可以使用相同的语法查询不同的数据源。 文使用的Linq查询包含了两种方式,一种是直接查询,另一种是使用System.Linq中定义的扩展方法进行的查询。对于扩展方法查询的方式,使用了大量的Lambda表的是和系统定义的委托Func。不熟悉这两个东西可以看相关的文章:【Lambda表达式学习记录】【Action和Func委托】转载 2011-11-02 21:15:51 · 490 阅读 · 0 评论 -
LINQ标准查询操作符(四)—AsEnumerable,Cast,OfType,ToArray,ToDictionary,ToList,ToLookup,First,Last,ElementAt
十、转换操作符转换操作符是用来实现将输入对象的类型转变为序列的功能。名称以“As”开头的转换方法可更改源集合的静态类型但不枚举(延迟加载)此源集合。名称以“To”开头的方法可枚举(即时加载)源集合并将项放入相应的集合类型。1. AsEnumerable所有实现了IEnumerable接口的类型都可以调用此方法来获取一个IEnumerable集合。此方法一般仅用于实现类中的方法与IEnu转载 2011-11-03 13:57:30 · 3190 阅读 · 0 评论 -
LINQ标准查询操作符(二)——Join、GroupJoin、GroupBy、Concat、
四、联接操作符联接是指将一个数据源对象与另一个数据源对象进行关联或者联合的操作。这两个数据源对象通过一个共同的值或者属性进行关联。LINQ有两个联接操作符:Join和GroupJoin。1. JoinJoin操作符类似于T-SQL中的inner join,它将两个数据源相联接,根据两个数据源中相等的值进行匹配。例如,可以将产品表与产品类别表相联接,得到产品名称和与其相对应的类别名称转载 2011-11-03 13:39:44 · 3287 阅读 · 0 评论 -
LINQ标准查询操作符(一)——select、SelectMany、Where、OrderBy、OrderByDescending、ThenBy、ThenByDescending和Reverse
一、投影操作符1. SelectSelect操作符对单个序列或集合中的值进行投影。下面的示例中使用select从序列中返回Employee表的所有列:using (NorthwindDataContext db=new NorthwindDataContext()){ //查询语法 var query = from e in db.Employees转载 2011-11-03 13:21:47 · 2884 阅读 · 0 评论 -
LINQ to XML .Net 3.5 中的新XML对象
System.Xml.Linq 命名空间中,有一系列新的LINQ to XML 帮助对象,使处理内存中的XML文档变的非常简单。示例使用的Hamlet.xml来源自C#高级编程源代码。XDocument XDocument 代替了.Net 3.5 之前的XmlDocument 对象,它更容易处理XML文档。XDocument 可以和下面要说到的XML对象一起使用。XDocume转载 2011-11-03 21:36:51 · 443 阅读 · 0 评论 -
LINQ标准查询操作符(三)——Aggregate、Average、Distinct、Except、Intersect、Union、Empty、DefaultIfEmpty、Range、Repeat
七、聚合操作符聚合函数将在序列上执行特定的计算,并返回单个值,如计算给定序列平均值、最大值等。共有7种LINQ聚合查询操作符:Aggregate、Average、Count、LongCount、Max、Min和Sum。1. AggregateAggregate操作符对集合值执行自定义聚合运算。例如,需要列出所有产品类别清单,每个类别名称之间用顿号连接。以下的代码演示了这一过程:us转载 2011-11-03 13:48:26 · 2076 阅读 · 0 评论 -
LINQ to SQL 查询数据库和使用存储过程
如下列出查询表达式,常用操作符,与SQL语句对应。where 关键字的使用public void MyWhere() { NorthwindDataContext dc = new NorthwindDataContext(); //查询产品名称以L开头的记录 var query = from p in转载 2011-11-03 21:29:52 · 423 阅读 · 0 评论 -
LINQ to SQL语句之Insert/Update/Delete操作
Insert/Update/Delete操作插入(Insert)1.简单形式说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提交到数据库。NorthwindDataContext db = new NorthwindDataContext();var newCustomer = new Customer{转载 2011-11-03 21:33:32 · 383 阅读 · 0 评论 -
LINQ to SQL 数据库与LINQ对象的关系
LINQ的优点是提供了在代码中使用强类型化对象,这些对象还映射到以后的数据库对象上下面是数据库对象和LINQ对象的映射关系数据库对象LINQ对象数据库DataContext表类和集合视图类和集合列属性关系嵌套集合存储过程方法 左列是数据库,数据库是一个完整的实体-转载 2011-11-03 21:07:40 · 780 阅读 · 0 评论 -
LINQ to SQL 用O/R设计器手工建表对象
除了自己建立定制对象外,还可以使用O/R设计器以可视化的方式创建数据对象和关系。双击DBML文件打开OR设计器,从工具栏拖动一个类进来,改名为Customers并右键->添加属性,设置CustomerID属性为主键,设置源属性为数据库中的dbo.Customers表,注意这里加上了dbo。结果如下:这时候可以打开dbml.layout文件和designer.cs 文件查看结转载 2011-11-03 21:24:15 · 1018 阅读 · 0 评论