标签:
1.LINQ的数据源
class farmer : CollectionBase
{
public string _name;
public int _age;
public farmer(string s, int i )
{
_name = s;
_age = i;
}
public void add(farmer s)
{
List.Add(s);
}
public farmer this[int index]
{
set { List[index] = value; }
get { return (farmer)List[index]; }
}
}
var query = from customer in this._customerList
where customer.City == "台北"
let Index = this._customerList.IndexOf(customer)
- select new { customer, Index };
var query = this._customerList
.Where(c => c.City == "台北") //这里面的C就是对象
.Select(c => new { custom = c, Index = this._customerList.IndexOf(c) }); //返回的是新的query对象集合,这个集合里面装的是匿名对象‘a的集合
from 指定数据源和范围变量
where 根据布尔表达式(由逻辑与 或 等组成)从数据源中筛选元素
select 指定查询结果中的元素所具有的类型或表现形式
group 对对查询结果按照键值进行分组
into 提供一个标示符,它可以充当对 join group 或 select 子句结果的引用
orderby 对查询出的元素进行排序
join 按照两个指定匹配条件来联接俩个数据源
let 产生一个用于查询表达式中子表达式查询结果的范围变量
在迭代器块中用于向枚举数对象提供值或发出迭代结束信号。
yield return <expression>;
yield break;
计算表达式并以枚举数对象值的形式返回;expression 必须可以隐式转换为迭代器的 yield 类型。
yield 语句只能出现在 iterator 块中,该块可用作方法、运算符或访问器的体。
标签:
原文地址:http://www.cnblogs.com/weloveshare/p/5294878.html