Linq基本语法
2010-01-20 01:21
316 查看
在向大家详细介绍Linq基本语法之前,首先让大家了解下调用Enumberalbe扩展函数,然后全面介绍Linq基本语法。
Linq基本语法
var result = from item in container orderby value ascending/descending select item; 1、获取全部记录
var allCars = from c in myCars select c; 2、只获取字段名称
var names = from c in myCars select c.PetName; 这里names就是隐式类型的变量。
3、使用Enumerable.Distinct<T>()
var makes = (from c in myCars select c.Make).Distinct<string>(); 4、即可以在定义的时候调用Enumberalbe扩展函数
var names = from c in myCars select c.PetName; foreach (var n in names) { Console.WriteLine("Name: {0}", n); } 也可以在兼容的数组类型上调用
var makes = from c in myCars select c.Make; Console.WriteLine("Distinct makes:"); foreach (var m in makes.Distinct<string>()) { Console.WriteLine("Make: {0}", m); } // Now get only the BMWs. var onlyBMWs = from c in myCars where c.Make == "BMW" select c; // Get BMWs going at least 100 mph. var onlyFastBMWs = from c in myCars where c.Make == "BMW" && c.Speed >= 100 select c; 5、生成新的数据类型(投影)
var makesColors = from c in myCars select new {c.Make, c.Color}; 6、Reverse<T>()
或者
var subset = (from c in myCars select c).Reverse<Car>(); foreach (Car c in subset) { Console.WriteLine("{0} is going {1} MPH", c.PetName, c.Speed); } 7、排序
默认是ascending
// Order all the cars by PetName. var subset = from c in myCars orderby c.PetName select c; // Now find the cars that are going less than 55 mph, // and order by descending PetName subset = from c in myCars where c.Speed > 55 orderby c.PetName descending select c; 默认顺序时也可以明确指明
var subset = from c in myCars orderby c.PetName ascending select c; 8、Enumerable.Except()
两个IEnumerable<T>兼容的对象的差集
static void GetDiff() { List<string> myCars = new List<String> { "Yugo", "Aztec", "BMW"}; List<string> yourCars = new List<String> { "BMW", "Saab", "Aztec" }; var carDiff =(from c in myCars select c) .Except(from c2 in yourCars select c2); Console.WriteLine("Here is what you don't have, but I do:"); foreach (string s in carDiff) Console.WriteLine(s); // Prints Yugo. } 以上介绍Linq基本语法
新闻来自: 新客网(www.xker.com) 详文参考:http://www.xker.com/page/e2009/0914/78230.html
Linq基本语法
var result = from item in container orderby value ascending/descending select item; 1、获取全部记录
var allCars = from c in myCars select c; 2、只获取字段名称
var names = from c in myCars select c.PetName; 这里names就是隐式类型的变量。
3、使用Enumerable.Distinct<T>()
var makes = (from c in myCars select c.Make).Distinct<string>(); 4、即可以在定义的时候调用Enumberalbe扩展函数
var names = from c in myCars select c.PetName; foreach (var n in names) { Console.WriteLine("Name: {0}", n); } 也可以在兼容的数组类型上调用
var makes = from c in myCars select c.Make; Console.WriteLine("Distinct makes:"); foreach (var m in makes.Distinct<string>()) { Console.WriteLine("Make: {0}", m); } // Now get only the BMWs. var onlyBMWs = from c in myCars where c.Make == "BMW" select c; // Get BMWs going at least 100 mph. var onlyFastBMWs = from c in myCars where c.Make == "BMW" && c.Speed >= 100 select c; 5、生成新的数据类型(投影)
var makesColors = from c in myCars select new {c.Make, c.Color}; 6、Reverse<T>()
或者
var subset = (from c in myCars select c).Reverse<Car>(); foreach (Car c in subset) { Console.WriteLine("{0} is going {1} MPH", c.PetName, c.Speed); } 7、排序
默认是ascending
// Order all the cars by PetName. var subset = from c in myCars orderby c.PetName select c; // Now find the cars that are going less than 55 mph, // and order by descending PetName subset = from c in myCars where c.Speed > 55 orderby c.PetName descending select c; 默认顺序时也可以明确指明
var subset = from c in myCars orderby c.PetName ascending select c; 8、Enumerable.Except()
两个IEnumerable<T>兼容的对象的差集
static void GetDiff() { List<string> myCars = new List<String> { "Yugo", "Aztec", "BMW"}; List<string> yourCars = new List<String> { "BMW", "Saab", "Aztec" }; var carDiff =(from c in myCars select c) .Except(from c2 in yourCars select c2); Console.WriteLine("Here is what you don't have, but I do:"); foreach (string s in carDiff) Console.WriteLine(s); // Prints Yugo. } 以上介绍Linq基本语法
新闻来自: 新客网(www.xker.com) 详文参考:http://www.xker.com/page/e2009/0914/78230.html
相关文章推荐
- LINQ基本语法整理(一)
- Linq基本子句介绍-语法之where
- Linq基本子句介绍-语法之into
- Linq 基本语法
- Linq基本子句介绍-语法之select
- LINQ简记(1):基本语法
- Linq:基本语法form ,select, where(2)
- LINQ学习笔记(一)基本语法
- Linq基本语法
- LINQ简记(1):基本语法
- Linq基本语法
- Linq基本语法
- Linq:基本语法group by, order by ,into(3)
- LINQ简记(1):基本语法
- LINQ的基本语法介绍
- LINQ的基本语法包含如下的8个上下文关键字,这些关键字和具体的说明如下
- Linq基本语法
- Linq基本子句介绍-语法之let
- Linq基本语法20180126
- LINQ的基本应用语法