LINQ отложенное и принудительное выполнение запроса

Пример отложенное выполнение запроса

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, 10, 11 };
 
  //создание запроса
  var query = 
   from val in ara
   where (val % 2 == 0) && (val > 6)
   select val;
 
  //отложенное выполнение запроса
  foreach(var i in query) {
   Console.Write("{0} ", i);
  }
  Console.WriteLine();
 
  Console.ReadKey();
  return 0;
 }
}
8 10 

Пример принудительное выполнение запроса

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, 10, 11 };
 
  //создание запроса
  //принудительное выполнение запроса 
  //происходит с помощью вызова методов ToArray() или ToList()
  var query = 
   (from val in ara
    where (val % 2 == 0) && (val > 6)
    select val).ToArray();
 
  foreach(var i in query) {
   Console.Write("{0} ", i);
  }
  Console.WriteLine();
 
  Console.ReadKey();
  return 0;
 }
}
8 10 
Обновлено: 26.12.2019 — 21:23

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.