dir.by  
Programming, development, testing
Entity Framework (EF5, EF6) для работы с базой данных на C#
Auto Code First. Entity Framework из существующей таблицы в базе данных → создает C# класс
  Looked at 7179 times    
 Auto Code First. Entity Framework из существующей таблицы в базе данных → создает C# класс 
last updated: 28 June 2018
Вручную создавать C# классы по готовым таблицам в Базе данных довольно трудно.
В этом случае мы можем использовать Auto Code First (Code First утилиту).
Эта Code First утилита есть в Visual Studio 2013, Visual Studio 2015, Visual Studio 2017...
План (3 шага)
Шаг 1. Создаем новое консольное приложение
Шаг 2. Создаем таблицу в Базе данных
Шаг 3. Code First утилита (ADO.NET Entity Data Model)
Нажимаем правой клавишей мыши на нашем приложении ConsoleApplication1
Выбираем AddNew ItemADO.NET Entity Data ModelCode First from database
Выбираем базу данных
На заметку! Галочка Save Connection settings in App.Config означает что в файле App.Config добавится строка соединения с Базой Данных.
Строка соединения будет иметь имя Model1.
На следующем шаге выбираем по каким таблицам будут создаваться C# классы
Нажимаем кнопку "Finish" и увидим что создались новые файлы с C# классами
Создался новый файл "Book.cs"
Entity Framework утилита создала новый класс Book для получения значений из Базы данных
Создался новый файл "Model1.cs"
Для подключения и работой с Базой данных нам нужен контекст данных это класс DbContext.
Entity Framework утилита создала новый класс Model1 отнаследованный от класса DbContext
В файле "App.config" добавились строчки для соединения с Базой данных
<connectionStrings>
<add name="Model1" connectionString="data source=EVGENI;initial catalog=MyDatabase1;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />
</connectionStrings>

Читать подробнее <connectionStrings> в .config файле...
  C#     Файл "Book.cs"
namespace ConsoleApplication1
{
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.Spatial;

[Table("Book")]
public partial class Book
{
public int Id { get; set; }

public string Name { get; set; }

public int Price { get; set; }
}
}
  C#     Файл "Model1.cs"
namespace ConsoleApplication1
{
     using System;
     using System.Data.Entity;
     using System.ComponentModel.DataAnnotations.Schema;
     using System.Linq;

     public partial class Model1 : DbContext
     {
          public Model1()
               : base("name=Model1")
          {
          }

          public virtual DbSet<Book> Books { get; set; }

          protected override void OnModelCreating(DbModelBuilder modelBuilder)
          {
          }
     }
}
 
← Previous topic
Code First. Мы пишем C# класс. Entity Framework по нашему C# классу → создает и заполняет таблицу в базе данных
 
Next topic →
Database First. Entity Framework из существующей таблицы в базе данных → создает C# класс
 
Your feedback ... Comments ...
   
Your Name
Your comment (www links can only be added by a logged-in user)

Экскурсии по Москве Экскурсии по Москве: пешеходные, автобусные и речные прогулки на любой вкус
  Объявления  
  Объявления  
 
Что такое Entity Framework?
Типы в Entity Framework
Соглашения по преобразование типов, наименованию таблиц в Entity Framework
Внешний ключ (Foreign Key) и каскадное удаление
DateTime & только Date & только Time в Entity Framework
Code First
Code First. Мы пишем C# класс. Entity Framework по нашему C# классу → создает и заполняет таблицу в базе данных
Auto Code First. Entity Framework из существующей таблицы в базе данных → создает C# класс
Database First
Database First. Entity Framework из существующей таблицы в базе данных → создает C# класс
Model First
Model First. Мы создаем модель в Visual Studio. По модели Entity Framework → создает C# классы и Базу данных
Работа с данными
Перебор данных в Entity Framework
Добавление данных в Entity Framework
Изменение (редактирование) данных в Entity Framework
Удаление данных в Entity Framework
Инициализация и миграция базы данных
Инициализация базы данных в Entity Framework. DropCreateDatabaseAlways позволяет при каждом новом запуске заполнять базу данных заново
Выполнение миграции Базы Данных в Entity Framework (если уже кто-то раньше сделал cs файл миграции, а мне хочется обновить у себя на компютере базу данных я выполняю миграцию то есть вызываю EntityFramework\Update-Database)
Создание и выполнение миграции Базы Данных в Entity Framework (я поменял c# класс, потом вызываю EntityFramework\add-migration т.е. автоматически добавляется в проект cs файл с кодом миграции, потом вызываю EntityFramework\Update-Database т.е. выполняется файл миграции и меняется база данных)
SQL в Entity Framework
SQL команды в Entity Framework
Транзакции в Entity Framework
Управление транзакциями в Entity Framework
Дополнительные темы, вопросы
Что такое <connectionStrings> в .config файле для Entity Framework (EF5, EF6)
При вызове EntityFramework\Update-Database появляется ошибка "System.Data.SqlClient.SqlException (0x80131904). A network-related or instance-specific error occurred while establishing a connection to SQL Server."
При вызове EntityFramework\Update-Database появляется ошибка "Your startup project '...' doesn't reference Microsoft.EntityFrameworkCore.Design"
WWW сайты для изучения Entity Framework
Сайты для изучения Entity Framework

  Ваши вопросы присылайте по почте: info@dir.by  
Яндекс.Метрика