Доступно ли OR / M в базовом проекте веб-API. NET? - PullRequest
0 голосов
/ 13 февраля 2020

В ASP. NET Framework-проектах можно щелкнуть правой кнопкой мыши проект и добавить ADO. NET Модель данных сущностей с использованием существующей базы данных. Это создаст классы и свойства из таблиц и столбцов базы данных.

Но эта опция отсутствует в ASP. NET Проект веб-приложения Core API. Что я могу использовать для создания этих классов из существующей SQL серверной базы данных, или это невозможно?

VS add ORM to project

Ответы [ 2 ]

3 голосов
/ 13 февраля 2020

Попробуйте выполнить следующую команду в папке вашего проекта:

$ dotnet ef dbcontext scaffold "Server=....." Microsoft.EntityFrameworkCore.SqlServe
r -o Models

И заполните строку Server=..... строкой подключения к базе данных. Убедитесь, что вы можете успешно подключиться к этой базе данных.

command

И EF попытается построить модели из базы данных.

generated

Ссылка: https://anduin.aiursoft.com/post/2020/2/13/creating-a-model-for-an-existing-database-in-entity-framework-core

0 голосов
/ 13 февраля 2020

Это сработало

В консоли диспетчера пакетов:

  1. Install-Package Microsoft.EntityFrameworkCore.Tools
  2. scaffold-dbcontext "your_connection_string" Microsoft.EntityFrameworkCore.SqlServer -outputdir Models -Table table1,table2

Если вы получили ошибка, что «термин« scaffold-dbcontext »не распознается как имя командлета ...», см. этот вопрос: термин «scaffold-dbcontext» не распознается как имя командлета, функции, файл сценария или работающая программа

...