一、什么是LINQ

1.定义:LINQ是Language Integrate Query的缩写,它在对象和数据之间建立一种对应关系,可以使用访问内存对象的方式查询数据集合。

2.特点:由于LINQ中查询表达式访问的是一个对象,所以该对象本身可以表示各种类型的数据源。比如SQL Server数据库、XML文档、ADO.NET数据集,以及内存中的数据集合。

3.有关接口和类

(1)接口

1)IEnumerable<T>接口:它表示可以查询的数据集合,一个查询通常是逐个对集合中的元素进行筛选操作,返回一个新的IEnumerable<T>对象,用来保存查询结果。

2)IQueryable<T>接口:它继承了IEnumerable<T>接口,表示一个可以查询的表达式目录树。

(2)类

1)Enumerable类:通过对IEnumerable<T>提供扩展方法,实现LINQ标准查询运算符。包括过滤、导航、排序、查询、联接、求和、求最大值、求最小值等操作。

2)Queryable类:通过对IQueryable<T>提供扩展方法,实现LINQ标准查询运算符。包括过滤、导航、排序、查询、联接、求和、求最大值、求最小值等操作。

二、操作

1.添加

        goods goods = new goods();
//绑定数据
goods.ID = Convert.ToInt32(TextBox1.Text);
goods.name = TextBox2.Text;
goods.price = Convert.ToDecimal(TextBox3.Text);
goods.counts = Convert.ToInt32(TextBox4.Text);
data.goods.InsertOnSubmit(goods);//添加数据
data.SubmitChanges();//执行添加数据操作

2.删除

        int id = Convert.ToInt32(TextBox9.Text);
//查询方式一
var result = from message in data.goods where message.ID == id select message;//查出要删除的数据源
//查询方式二
var result = data.goods.Where(r=>r.ID==id).First();//Lambda表达式查询
data.goods.DeleteAllOnSubmit(result);//准备删除
data.SubmitChanges();//执行删除

3.修改

        int id = Convert.ToInt32(TextBox5.Text);
//查询方式一
var result = from message in data.goods where message.ID == id select message;
foreach (goods datas in result)//遍历修改数据
{
datas.name = TextBox6.Text;
datas.price = Convert.ToDecimal(TextBox7.Text); ;
datas.counts = Convert.ToInt32(TextBox8.Text);
}
//查询方式二
var result = data.goods.Where(r=>r.ID==id).FirstOrDefault();
result.name = TextBox6.Text;//修改数据
result.price = Convert.ToDecimal(TextBox7.Text);
result.counts = Convert.ToInt32(TextBox8.Text);
data.SubmitChanges();//执行修改

LINQ基本语句的更多相关文章

  1. 经典Linq实例语句

    从技术角度而言,LINQ定义了大约40个查询操作符,如select.from.in.where以及order by(C#中).使用这些操作符可以编写查询语句.不过,这些查询还可以基于很多类型的数据,每 ...

  2. linq 常用语句

    自己练习的 switch (productDataAnalysisQuery.DataType) { : var data = (from hp in GPEcontext.hbl_product j ...

  3. c# linq查询语句详细使用介绍

    本文介绍Linq的使用方法 linq介绍 LINQ只不过是实现IEnumerable和IQueryable接口的类的扩展方法的集合. LINQ可以查询IEnumerable集合或者IQueryable ...

  4. 简单的Linq查询语句

    下面我来我大家介绍几种简单的查询方式. 1.简单语法 这个LINQ语句的第一个关键字是from,from后面加的是范围变量,范围变量后加in,后加上事先实例化的模型,然后点出数据的来源. List是列 ...

  5. linq查询语句转mongodb

    && (与操作) 子表达式可以通过&&合并来查询满足所有子表达式的文档 var query = from c in collection.AsQueryable< ...

  6. LINQ 基础语句

    去全部集合 using (dat0216DataContext con = new dat0216DataContext()) { //LoList   是转换成  List集合 List<Us ...

  7. C#参考:Linq 概述

    Linq (Language Integrated Query,语言集成查询),是微软公司提供的一项新技术,它能够将查询功能引入到.NET 3.5 所支持的编程语言中,例如C#,Visual Basi ...

  8. Linq之group子句

    在Linq查询语句中,group子句主要作用是对查询的结果集进行分组.并返回元素类型为IGrouping<TKey,TElement>的对象序列. 下面我们在代码实例中创建一个GroupQ ...

  9. LinQ实战学习笔记(三) 序列,查询操作符,查询表达式,表达式树

    序列 延迟查询执行 查询操作符 查询表达式 表达式树 (一) 序列 先上一段代码, 这段代码使用扩展方法实现下面的要求: 取进程列表,进行过滤(取大于10M的进程) 列表进行排序(按内存占用) 只保留 ...

随机推荐

  1. 插入数据时候获取返回的id 很重要 不要忘记写select last_insert_id()

  2. 洛谷P2114 [NOI2014]起床困难综合症

    P2114 [NOI2014]起床困难综合症 题目描述 21世纪,许多人得了一种奇怪的病:起床困难综合症,其临床表现为:起床难,起床后精神不佳.作为一名青春阳光好少年,atm一直坚持与起床困难综合症作 ...

  3. MT【110】巧设法向量解决距离问题

    分析:设面的法向量$n=(x,y,z)$

  4. 【题解】 Codeforces 919F A Game With Numbers(拓扑排序+博弈论+哈希)

    懒得复制,戳我戳我 Solution: 我感觉我也说不太好,看Awson的题解吧. 说一点之前打错的地方: 连边存的是hash后的数组下标 if(ans[ num( C[a.hash()] , C[b ...

  5. Winform Treeview 的按需加载

    最近项目里用到treeview,原先设计的是一开始就把所有数据都加载到treeview里,后来发现客户的数据量实在太大,加载所有数据要2分钟,这个是客户没法接受的.后来就考虑到用户也不是一开始就要看所 ...

  6. (转)Maven学习总结(七)——eclipse中使用Maven创建Web项目

    孤傲苍狼只为成功找方法,不为失败找借口! Maven学习总结(七)——eclipse中使用Maven创建Web项目 一.创建Web项目 1.1 选择建立Maven Project 选择File -&g ...

  7. python创建与遍历List二维列表

    python创建与遍历List二维列表 觉得有用的话,欢迎一起讨论相互学习~Follow Me python 创建List二维列表 lists = [[] for i in range(3)] # 创 ...

  8. Jquery自定义滚动条插件

    下载地址:http://files.cnblogs.com/files/LoveOrHate/jquery.nicescroll.min.js <script src="jquery. ...

  9. HTML5 中 Geolocation 获取地理位置的原理是什么?

    http://www.zhihu.com/question/20473051?sort=created geolocation的位置信息来源包括GPS.IP地址.RFID.WIFI和蓝牙的MAC地址. ...

  10. AngularJS入门基础——控制器

    AngularJS中的控制器是一个函数,用来向视图的作用域添加额外的功能.我们用它来给作用域对象设置初始状态,并添加自定义行为. AngularJS同其他JavaScript框架最主要的一个区别就是, ...