LINQ 查詢表達式由 from、where、orderby、select 等子句組成,編譯器會將其轉換為方法呼叫鏈(擴充方法)。
string[] list = { "adobe", "Excel", "acer", "query", "async", "xianfen", "apple", "amazon", "player", "best", "wow" };
// 查詢語法
var result = from word in list
where word.StartsWith("a")
orderby word descending
select word;
result.ToList().ForEach(str => Console.WriteLine(str));
/* 輸出:
async
apple
amazon
adobe
acer
*/
var result = list.Where(str => str.StartsWith("a"))
.OrderByDescending(str => str);
var result = Enumerable.OrderByDescending(
Enumerable.Where(list, str => str.StartsWith("a")),
str => str);
Enumerable 靜態方法呼叫。IEnumerable<TElement> 或其衍生型別。