Entity Framework Model First

Entity Framework Model First

Всем доброго времени суток. На связи Алексей Гулынин. В данной статье я бы хотел рассказать о подходе Entity Framework — Model First. В данном подходе у нас нет ни базы, ни классов. У нас будет только дизайнер, в котором мы визуально спроектируем модель.

Создадим пустой проект консольного приложения. Не забываем через менеджер пакетов NuGet добавить Entity Framework. Далее добавим в наш проект модель ADO.NET EDM:

Model First в EF

Выбираем "Пустая модель конструктора EF":

Model First в EF

Далее мы увидим, что создалась пустая модель:

Model First в EF

Добавим в дизайнер несколько сущностей. Делается это в панели элементов:

Model First в EF

Можно перетащить на дизайнер, либо 2 раза щёлкнуть мышью. После добавления у нас появится одна сущность. Добавим нашей сущности несколько свойств. По умолчанию все свойства создаются типа string. Тип свойства можно изменить, щёлкнув правой кнопкой по мыши и выбрав пункт меню "Свойства". Как у нас теперь выглядит сущность:

Model First в EF

На основе данной модели мы теперь сможем создать базу данных и добавить классы.

Сохраняем модель. Далее правой кнопкой мыши в любой области дизайнера — "Сформировать базу данных на основе модели". Базу данных я создал новую, можно взять из предыдущего примера:

Model First в EF

Далее на языке DDL (Data Definition Language — язык описания данных) формируется запрос:

Model First в EF

При нажатии "Готово" будет сгенерирован скрипт, который необходимо будет выполнить ("Ctrl + Shift + E"):

Model First в EF

Сохраним нашу модель.

Видим, что сгенерировался класс нашей сущности и класс контекста:

Model First в EF

База данных также успешно создалась:

Model First в EF

В нашей таблице пока отсутствуют данные. Давайте добавим их с помощью кода, а затем выведем их:

static void Main(string[] args)
{
  // Создаём объект контекста
  MyModelContainer context = new MyModelContainer();
  // Добавляем данные
  context.PersonsSet.Add(new Persons { Name = "Alex", Age = 26 });
  context.PersonsSet.Add(new Persons { Name = "Ivan", Age = 19 });
  // Сохраняем изменения в контексте
  // Если этого не сделать, то предыдущие строки не имеют смысла, т.к
  // в базу ничего не запишется.
  context.SaveChanges();
  // Выводим на экран наши данные
  List<Persons> persons = context.PersonsSet.ToList();
  foreach (Persons person in persons)
  {
    Console.WriteLine("ID: {0}. Name: {1} | Age: {2}", person.Id, person.Name, person.Age);
  }
  Console.ReadLine();
}

В данном уроке вы увидели, как можно легко и быстро с помощью дизайнера построить базу данных и классы.

В данной статье вы познакомились с подходом Entity Framework — Model First, а также научились добавлять данные в базу с помощью кода.

На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.


Комментарии:

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

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