Предложение let создает переменную.
Рубрика: Linq
LINQ into
Контекстно-зависимое слов into создает временную переменную. Используется в предложениях group или select.
LINQ group
Группировка по первому символу
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
using System; //добавить ссылку using System.Linq; class Program { public static int Main() { //источник данных string[] ara = new string[] { "a", "ab", "abc", "abcd","abcde", "b","bc", "bcd","bcdef", "bcdef", "c", "cd","cde", "cdef","cdefg" }; //создание запроса var query = from val in ara //сгруппировать val по 1 символу и записать в новую переменную N group val by val[0] into N select new { firstSimvol = N.Key, word = N }; //выполнение запроса foreach(var i in query) { Console.WriteLine("---{0}---", i.firstSimvol); foreach(var j in i.word) { Console.WriteLine(j); } Console.WriteLine(); } Console.ReadKey(); return 0; } } |
Группировка по перовой букве
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
using System; //добавить ссылку using System.Linq; class Program { public static int Main() { //источник данных string[] ara = new string[] { "a", "ab", "abc", "abcd","abcde", "b","bc", "bcd","bcdef", "bcdef", "c", "cd","cde", "cdef","cdefg" }; //создание запроса var query = from val in ara //сгруппировать val по 1 букве и записать в новую переменную N group val by val.Substring(0, 1) into N select new { firstLetter = N.Key, word = N }; //выполнение запроса foreach(var i in query) { Console.WriteLine("---{0}---", i.firstLetter); foreach(var j in i.word) { Console.WriteLine(j); } Console.WriteLine(); } Console.ReadKey(); return 0; } } |
Альтернативный вариант, возвращает анонимный объект, на основании выборки.
1 |
stars.GroupBy(x => x.CurrentBand).Select(x=>new {Name=x.Key, Size =x.Count()}).ToArray(); |
LINQ orderby
Cортировка по возрастанию Cортировка по убыванию
LINQ select
Простое предложение select Предложение select в виде анонимного типа
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
using System; //добавить ссылку using System.Linq; class Program { public static int Main() { //источник данных int[] ara = new int[] { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; //создание запроса var query = from val in ara select new { val, a = 2, res = val * 2 }; //выполнение запроса foreach(var i in query) { Console.WriteLine("{0} * {1} = {2}", i.val, i.a, i.res); } Console.ReadKey(); return 0; } } |
Передача значения в метод Предложение select и методы преобразования Предложение select и арифметические действия из чего состоит запрос переменная последовательности имеет неявный тип var переменная последовательности имеет тип IEnumerable<T> отложенное выполнение запроса принудительное выполнение запроса синтаксис запросов синтаксис методов источник данных массив коллекция база […]