Применение 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;
//подключить пространство имен
using System.Collections.Generic;
 
class Program {
 public static int Main() {
  //источник данных коллекция
  List<int> ara = new List<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 

База данных MS SQL Server глобально вручную

class Program {
 public static int Main() {
 
  //string connectionString = @"Data Source=BISEM\MSSQLSERVER2012;Initial Catalog=abc;Integrated Security=True";
  //DataContext db = new DataContext(string connectionString);
 
  //или
 
  string connectionString = ConfigurationManager.ConnectionStrings["abc"].ConnectionString;
  DataContext db = new DataContext(connectionString);
  Table<Number> Numbers = db.GetTable<Number>();
 
  //создание запроса
  var query = 
   from val in Numbers
   where (val.Digit % 2 == 0) && (val.Digit > 6)
   select val;
 
  //выполнение запроса
  foreach(var i in query) {
   Console.Write("{0} ", i.Digit);
  }
  Console.WriteLine();
 
  Console.ReadKey();
  return 0;
 }
}

Модель Entity


Скрыть

Показать

Копировать
  Main.cs  

using System;
 
//добавить ссылку
using System.Linq;
 
//добавить ссылку
//подключить пространство имен
using System.Data;
using System.Data.Linq;
 
//добавить ссылку
using System.Data.Linq.Mapping;
 
//добавить ссылку, где находится класс abcEntities
using _0004;
 
class Program {
 public static int Main() {
 
  /*создаем экземпляр класса, который находится в файле, имеющий в своем 
   названии слово Contextв нашем примере это abcModel.Context.cs*/
  var context = new abcEntities();
 
  //создание запроса
  var query = 
   from val in context.numbers
   where (val.digit % 2 == 0) && (val.digit > 6)
   select val;
 
  //выполнение запроса
  foreach(var i in query) {
   Console.Write("{0} ", i.digit);
  }
  Console.WriteLine();
 
  Console.ReadKey();
  return 0;
 }
}

Файл XML

using System;
 
//добавить ссылку
using System.Linq;
 
//добавить ссылку
//подключить пространство имен
using System.Xml;
using System.Xml.Linq;
 
class Program {
 public static int Main() {
 
  //источник данных
  XDocument doc = XDocument.Load("a.xml");
 
  //создание запроса
  var query =
    from val in doc.Descendants("number")
    where Convert.ToInt32(val.Attribute("digit").Value) % 2 == 0 && Convert.ToInt32(val.Attribute("digit").Value) > 6
    select val;
 
  //выполнение запроса
  foreach(var i in query) {
   Console.Write("{0} ", i.Attribute("digit").Value);
  }
  Console.WriteLine();
 
  Console.ReadKey();
  return 0;
 }
}
Обновлено: 26.12.2019 — 21:36

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

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

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