【.NET】Linq几样特点
LinQ 是 .net framework 3.5的技术,对集合的查询和操作十分方便,结合LinQ Provider ,可以更方便操作XML和SQL(或Entity)。
LinQ有6样常用的特性:
- 自动属性
- 隐形类型
- 对象集合初始器
- 匿名类
- 扩展方法
- Lambda表达式
自动属性就是,之前实体类的写法,需要有字段和属性赋值,现在都省略了,写成:
public class users{public int uid{get;set;} }
隐形类型就是,可以使用类似javascript的var来声明变量了,编译时赋值后,就不能改变数据类型。
var i = 123;
对象集合初始器就是,类似以前重载构造函数,用构造函数赋值的方法,现在更方便的做法:
//简单的 User user = new User{id=1;name="bb";sex="男";} //嵌套的 User user = new User{new Address{city="深圳";qu="福田区";} } //用集合List的数组类 List<User> user = new List{new User{id=1;name="AA";sex="男"},new User{id=2;name="BB";sex="女"} }
匿名类就是,隐形类型+对象集合初始器
var u = new User{id=1;name="aa";sex="男"};
扩展方法就是,静态方法都可以直接在变量上使用了,如:
//静态的公用方法 public static class common{public static bool IsNum(this sting s){//判断是否数字Regex regex = new Regex(@"^[0-9]*$");return regex.IsMatch(s);} }//在别的类 public class a{public void abc(){string str1 = "123";str1.IsNum();} }
Lambda表达式(冷打)就是,s=>s.IndexOf("abc") > 0 规则是(参数列表)=>表达式或查询语句,目前知道的可以用在委托和是Prodicate<T>的时候。
//委托 delegate int get1(int); get1 bb = s=> s * s; int j = bb(5); //j=25//Prodicate<T> List<int> temp = new List<int>{1,2,3}; var aa1 = temp.FindAll(s => s == 1);
转载于:https://www.cnblogs.com/laokchen/p/5846762.html
【.NET】Linq几样特点相关推荐
- LINQ篇:ASP.NET using LINQ(Part One) Scott大师的产物
[原文地址]Using LINQ with ASP.NET (Part 1) [原文发表日期]Sunday, May 14, 2006 9:49 PM 最近使我激动不已的新鲜事之一就是LINQ系列技术 ...
- 英语阅读推荐:使用AJAX+WF+LINQ制作Google IG式首页
如果你既想学习ASP.NET AJAX,又想学习Windows Workflow Foundation,还想学习LINQ(包括DLinq和XLinq),能够一次过满足你三个愿望的除了Kinder出奇蛋 ...
- 30分钟LINQ教程
在说LINQ之前必须先说说几个重要的C#语言特性 一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在fore ...
- 30分钟LINQ教程【转】
千万别被这个页面的滚动条吓到!!! 我相信你一定能在30分钟之内看完它!!! 在说LINQ之前必须先说说几个重要的C#语言特性 一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之 ...
- 由浅到深讲解C#-LINQ
在说LINQ之前必须先说说几个重要的C#语言特性 一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在fore ...
- 使用Dynamic LINQ实现Ext Grid的远程排序
要实现Ext Grid的远程排序其实很简单,只要修改查询语句的排序关键字就可以了,但是,如果你的项目是使用Linq进行开发的,会发现动态修改排序关键字并不是那么容易的事,解决办法就是使用LINQ Dy ...
- 快速解读linq语法
在说LINQ之前必须先说说几个重要的C#语言特性 一:与LINQ有关的语言特性 1.隐式类型 (1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在fore ...
- C#规范整理·集合和Linq
LINQ(Language Integrated Query,语言集成查询)提供了类似于SQL的语法,能对集合进行遍历.筛选和投影.一旦掌握了LINQ,你就会发现在开发中再也离不开它. 开始! 前 ...
- 手把手教你用好LINQ to SQL(1)
From: http://developer.51cto.com/art/200904/120915.htm 作者写下这篇文章的主要目的不是"一口吃成个胖子"让大家一次就学会LIN ...
最新文章
- NTFRS事件ID:13568
- [实验]通过内核Patch去掉iOS-v4.3.3的沙盒特性
- FLOW福禄创始人朱萧木:如何通过产品设计助力品牌营销传播
- 获取 iPhone 上联系人姓名、电话、邮件的代码
- go map(映射)的概念、3种创建方式及map的CRUD操作
- 2、Qt Project之鼠标事件监控
- 可重构计算芯片是未来吗?开发者如何抓住这一机会
- C++中两种计算时间方法的比较
- 改变浏览器窗口的大小和位置
- JavaEE学习总结(十四)— 人工智能微博
- 《模拟电子技术基础》课程笔记(一)——绪论
- 华为usb 无线网卡 linux,Linux下使用华为h3c Aolynk WuB320G无线网卡
- 基于Java(SSM)+MySQL的二手书籍交易系统【100010084】
- 数据分析报告编写规范
- redis 经纬度_【SpringBoot DB 系列】Redis 高级特性之 GEO
- Beego2 使用Session时SetCookie无效
- sweet-alert的swal()出现瞬间自动消失(type:“success”类型)
- 深入理解Java之线程池
- Python - Requests库下载图片
- Mybatis学习总结(结合个人理解)