LINQ學習筆記(9) let — 新增欄位

莊創偉
2 min readNov 15, 2017

--

有時候我們會想在原有的資料上,新增一個欄位來儲存運算後或判斷後的結果,此時可以使用 let

假設要把Classroom與ID組合起來成為學號

var x=from  o in SLISTlet StudentID=o.Classroom + o.IDselect new{StudentID,o.Name};

同時可以再對新增的欄位,進行條件式的搜索

var x=from  o in SLISTlet StudentID=o.Classroom + o.IDwhere StudentID.IndexOf("A")==0 
//編譯器會自動判斷型別,所以可以直接使用string.IndexOf 不用再做轉型
select new{StudentID,o.Name};

let 是 條件式查詢的特有,如果要以Lambda表達式達成的話

var x3 = SLIST.Select(o => new { StudentID=o.Classroom + o.ID ,o.Name }).Where(o=>o.StudentID.IndexOf("A")==0);

--

--

莊創偉

學海無涯。但是為了生計還是得下海的風塵男子