int[] numbers = {1,2,3,4,5};
var query = from n in numbers where n >= 2 && n <= 4 select n;
foreach(var a in query) Console.WriteLine(a);
string[] str = { "test00", "test01", "test02" };
var query = from s in str where s.Contains("01") select s;
foreach (var s in query) Console.WriteLine(s);
int[] price = {100,200,300};
var query = from n in price select n * 1.05;
class Fruit{
public string code;
public string name;
public int price;
}
class Program{
static void Main(string[] args){
Fruit[] f = { new Fruit(){ code="A110",name="Apple",price=200},
new Fruit(){ code="G201",name="Orange",price=150}
};
var query = from n in f select n;
foreach(var a in query){
Console.WriteLine("{0},{1},{2}",a.code,a.name,a.price);
}
public static IEnumerable<TResult> Select<TSource, TResult>(this IEnumerable<TSource> source, Func<TSource, int, TResult> selector) {
if (source == null) throw Error.ArgumentNull("source");
if (selector == null) throw Error.ArgumentNull("selector");
return SelectIterator<TSource, TResult>(source, selector);
}
static IEnumerable<TResult> SelectIterator<TSource, TResult>(IEnumerable<TSource> source, Func<TSource, int, TResult> selector) {
int index = -1;
foreach (TSource element in source) {
checked { index++; }
yield return selector(element, index);
}
}