C#3新增语法特性

C#3,.Net Framework 3.5 ,Visual Studio 2008, CLR 3.0

C#3.0新引进的语法基于.Net Framework 3.5。主要引进的语法:Linq,隐式类型局部变量,匿名类型,对象和集合的初始化器,自动属性,扩展方法,查询表达式,Lamda表达式,表达式树,部分方法。

其中最重要的当属Linq

 1、Linq

 1   public void TestLinq()
 2         {
 3             List<string> nameList = new List<string>() {
 4                    "Jim","Lily","Tim","Lucy","John","Jobs"
 5                };
 6             List<string> lNameList = new List<string>();
 7             #region  以下为非linq查询nameList中以L开头的名字
 8 
 9             foreach (string nameItem in nameList)
10             {
11                 if (nameItem.StartsWith("L"))
12                 {
13                     lNameList.Add(nameItem);
14                 }
15             }
16             #endregion
17             #region 使用linq+
18             IEnumerable<string> tmpNameList = from n in lNameList
19                         where n.StartsWith("L")
20                         select n;
21 
22             #endregion
23         }
View Code

2、隐式类型局部变量,就是引入了关键字var,其只能定义在方法体中作为局部变量,并且在定义时初始化,其实已经确定了类型。

var dateString = "1900-1-1";

3、匿名类型,也类似于隐式类型局部变量,用var关键字定义

var varClass=new{name="john",Code="J0001"};

4、对象与属性的初始化器

EmployEntity emp = new EmployEntity()
{
  EmpCode = "J0001",
  EmpName = "John",
  EmpId = 1,
};

5、自动属性

 public string UserName { get; set; }

6、扩展方法

7、查询表达式

8、Lamda表达式

9、表达式树

10、部分方法

posted on 2018-04-23 23:41  john_yong  阅读(134)  评论(0编辑  收藏  举报

导航