New Features in C# 3.0, 4.0 and 5.0 (英文差的免入)
What’s New in C# 3.0
Language Integrated Query(LINQ)
- LINQ enables queries to be written in C# program to query both local collections
(such as lists or XML documents) or remote data sources (such as a database)
Implicitly typed local variables
- let you omit the variable type in a declaration statement, allowing the compiler to infer it
Object initializers
- simplify object construction by allowing properties to be set inline after the constructor call
Lambda expressions
- miniature functions created by the compiler on the fly, and are particularly useful in “fluent” LINQ queries
Extension methods
- extend an existing type with new methods, making static methods feel like instance methods
Query expressions
- provide a higher-level syntax for writing LINQ queries that can be substantially simpler when working
with multiple sequences or range
variables
Expression trees
- miniature code DOMs that describe lambda expressions assigned to the
special type Expression<TDelegate>
Expression trees make it possible for LINQ queries to execute remotely
Automatic properties
- cut the work in writing properties that simply get/set a private backing field by having the compiler do that work automatically
Partial methods
- let an auto-generated partial class provide customizable hooks for manual authoring which “melt away” if unused
What’s New in C# 4.0
Dynamic binding
- defers binding
Optional parameters
- allow functions to specify default parameter values so that callers can omit arguments and named arguments
allow a function caller to identify an argument by name rather than position
Type variance rules
- type parameters in generic interfaces and generic delegates can be marked as covariant or
contravariant, allowing more natural type conversions
COM interoperability
What’s New in C# 5.0
C# 5.0’s big new feature is support for asynchronous functions via two new
keywords, async and await. Asynchronous functions enable asynchronous continuations,
which make it easier to write responsive and thread-safe rich-client applications.
They also make it easy to write highly concurrent and efficient I/O-bound
applications that don’t tie up a thread resource per operation
New Features in C# 3.0, 4.0 and 5.0 (英文差的免入)的更多相关文章
- vue 3.0 体验,vue 3.0新特性
前言 昨天不是尤雨溪 不是刚在B站 直播玩了,分享了vue-next v3.0.0-beta.1 版本 哈哈, 不要太刺激哦 6大亮点 Performance:性能更比Vue 2.0强. Tree s ...
- PHP build notes - WARNING: This bison version is not supported for regeneration of the Zend/PHP parsers (found: 3.0, min: 204, excluded: 3.0).
WARNING: This bison version is not supported for regeneration of the Zend/PHP parsers (found: 3.0, ...
- CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14
准备篇: CentOS 7.0系统安装配置图解教程 http://www.osyunwei.com/archives/7829.html 一.配置防火墙,开启80端口.3306端口 CentOS 7. ...
- centos 7.0 编译安装php 7.0.3
php下载页面 http://cn2.php.net/downloads.php 7.0.3多地区下载页面 http://cn2.php.net/get/php-7.0.3.tar.gz/from/a ...
- ASP.NET 5 已死 - 隆重介绍 ASP.NET Core 1.0 和 .NET Core 1.0
还没正式登场就死了?不能怪我标题党,是大神Scott在他博客上这么说的,我只是翻译了一下. 在1月20号最新的ASP.NET Community Standup视频中,微软aspnet开发组的大帅哥 ...
- 在DirectShow中支持DXVA 2.0(Supporting DXVA 2.0 in DirectShow)
这几天在做dxva2硬件加速,找不到什么资料,翻译了一下微软的两篇相关文档.并准备记录一下用ffmpeg实现dxva2,将在第三篇写到.这是第二篇.,英文原址:https://msdn.microso ...
- jackson2.5.0升级到2.7.0
开发环境:spring-mvc4.1.7.jackson2.7.0 问题描述:项目中将原来的jackson2.5.0升级到2.7.0,导致服务调用出错. mvc相关的配置文件如下: <?xml ...
- 示例Oracle 10.2.0.1.0升级到10.2.0.4.0一例
1.查看当前系统版本 [oracle@std Disk1]$ sqlplus '/as sysdba' SQL*Plus: Release - Production on Thu Jan :: Cop ...
- Windows 8.0上Eclipse 4.4.0 配置CentOS 6.5 上的Hadoop2.2.0开发环境
原文地址:http://www.linuxidc.com/Linux/2014-11/109200.htm 图文详解Windows 8.0上Eclipse 4.4.0 配置CentOS 6.5 上的H ...
随机推荐
- Android开发:向下一个activity传递数据,返回数据给上一个activity
1.向下一个activity传递数据 activity1 Button button=(Button) findViewById(R.id.button1); button.setOnClickLis ...
- 函数 buf_block_init
/********************************************************************//** Initializes a buffer contr ...
- SCOI2010 and SXOI2014 股票交易(DP)
明显的单调队列…… 但下面的程序一直有bug 附上题解:http://blog.csdn.net/njlcazl/article/details/8611042 附上我的代码: var head,ta ...
- postgreSQL数据类型转换字符串和数值
1.将数值转成字符串类型 方法1:调用to_char(int, text)函数,int为要转换值,text为数值格式化模式,其中模式描述为: 模式 描述 9 带有指定数值位数的值 0 带前导零的值 ...
- 选择select框跳出信息
<html > <body > <select type="select" name=s1 onChange=alert("你选择了&quo ...
- JPA---一对一关系
在JPA中,使用@oneToOne来标示. package com.yl.demo1.bean.oneToone; import javax.persistence.CascadeType; impo ...
- Ext基础一(转载)
要学习及应用好Ext框架,必须需要理解Html DOM.Ext Element及Component三者之间的区别. 每一个HTML页面都有一个层次分明的DOM树模型,浏览器中的所有内容都有相应的DOM ...
- (转载)HTTP URL
HTTP URL的格式如下: http://host[“:”post][abs_path] 其中http表示要通过HTTP协议来定位网络资源.host表示合法的Internet主机域名或IP地址(以点 ...
- Poj 1163 The Triangle 之解题报告
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 42232 Accepted: 25527 Description 7 3 ...
- VBScript: 正则表达式(RegExp对象)
RegExp对象是VBScript中用于提供简单地正则表达式支持的对象.VBScript中所有和正则表达式有关的属性和方法都有这个对象有关联. 一.RegExp对象的属性和方法(三个属性,三个方法) ...