Блазор с базой данных в первую очередь - PullRequest
2 голосов
/ 28 января 2020

Я пытаюсь создать простое приложение CRUD с использованием Blazor в Visual Studio 2019 - я просмотрел более 7 учебных пособий между YouTube, PluralSight и Channel 9, и во всех из них они используют Entity Framework Core для создания базы данных. и Таблицы из Visual Studio, которая понятна, так как код в первую очередь является идеальной архитектурой.

Однако моя база данных и таблицы уже существуют, и для первого шага я просто хочу подключить приложение Blazor к таблице и прочитайте его в столбцы пользовательского интерфейса.

Как бы выполнить sh шаг импорта существующей таблицы базы данных в Visual Studio 2019? Если в Интернете есть документация, специально посвященная выполнению этого в Blazor, пожалуйста, укажите мне на это, поскольку я не могу найти ничего, кроме старых ASP. Net MVC документов.

Ответы [ 2 ]

3 голосов
/ 30 января 2020

Добавьте следующие пакеты в ваш проект:

<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="3.1.1" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.1.1" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="3.1.1">

Добавьте строку подключения к базе данных в appsettings. json

{
  "ConnectionStrings": {
    "MyConnection": "Server=tcp:<yourServer>,1433;Initial Catalog=<yourDatabase>;Persist Security Info=False;User ID=<yourDatabaseUserName>;Password=<yourDatabaseUserPassword>;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=True;Connection Timeout=30;"
  }
}

Откройте PackageManagerConsole и введите

Scaffold-DbContext -Connection name=MyConnection -Provider Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models -Context MyDbContext -Force

Это создаст папку Models в вашем проекте, содержащую MyDbContext.cs плюс <TableName>.cs -файл для каждой таблицы в вашей базе данных.

Примечание: Для первого импорта вашей базы данных вам не нужен параметр -Force в Scaffolding. Это понадобится, если вы внесете изменения в свою базу данных после первого импорта и захотите обновить свои cs-классы впоследствии.

3 голосов
/ 29 января 2020

В нашей компании мы используем EF Core Power Tools для генерации контекста и классов моделей для Entity Framework Core.

Вы можете найти соответствующую документацию в https://github.com/ErikEJ/EFCorePowerTools/wiki/Reverse-Engineering. С помощью этого инструмента вы можете напрямую генерировать классы в Visual Studio, а также сохранять конфигурацию, которую вы легко можете обновить в случае изменения базы данных.

...