модель Entity

В данном примере мы будем использовать базу данных MySql. Создайте на сервере базу данных abc, таблицу Number и заполните ее.
Скрыть

Показать

Копировать
  Script.sql  
CREATE DATABASE abc;
GO
USE abc;
GO
CREATE TABLE Number (
 IDNumber SERIAL
 digit INT NOT NULL
)
GO
INSERT INTO Number(digit) VALUES 
(0), (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11)
 
Создайте модель существующей базы данных. Add. New Item. Data. ADO.NET Entity Data Model.
Выберите EF Designer from database.
Выберите подключение к базе данных.
Выберите версию.
Выберите объекты, которые будут в модели.
Появился файл abcModel.edmx и Visual Studio сгенерировала модель.
В файле, который имеет часть названия Context, (в нашем примере это abcModel.Context.cs) находятся свойства с именами моделей, сгенерированных от таблиц, только во множественном числе.
В нашем примере это таблица number, сгенерированная модель также имеет название number, а свойство в файле abcModel.Context.cs имеет то же название, только во множественном числе

public DbSet<number> numbers { get; set; }
Скрыть

Показать

Копировать
  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;
 }
}
 
8 10