let : 범위 변수를 기반으로 구성되는 새로운 범위 변수
People p1 = new People() { name = "A", age = 4 };
People p2 = new People() { name = "B", age = 5 };
People p3 = new People() { name = "C", age = 6 };
People p4 = new People() { name = "E", age = 7 };
People p5 = new People() { name = "F", age = 8 };
List<People> pList = new List<People>() { p1, p2, p3, p4, p5 };
var query = from user in pList
orderby user.name.Length
select user.name;
foreach (var name in query)
{
Console.WriteLine("{0},{1}", name, name.Length);
}
// 위처럼 하면 name 의 length 를 두번이나 구해야한다.
var letQuery = from user in pList
let length = user.name.Length
orderby length
select new { Name = user.name, Length = length };
foreach (var entry in letQuery)
{
Console.WriteLine("{0},{1}", entry.Name, entry.Length);
}
// 하지만 위처럼 let 를 이용하면 length 는 한번만 구하면 된다.
'C# > Winform' 카테고리의 다른 글
(.NET) exe 실행 파일 항상 위에 두기(BringWindowToTop, SetWindowPos - user32.dll) (0) | 2017.04.15 |
---|---|
(.NET) 문자열에서 숫자면 뽑아내기. (0) | 2017.04.15 |
(.NET) Converter, ConvertAll (0) | 2017.04.15 |
(.NET) DataTable Distince (0) | 2017.04.15 |
(.NET) string 를 enum Type 로 변경하기 (0) | 2017.04.15 |