Я пытаюсь использовать Entity Framework Core в репозитории данных, но у меня возникают проблемы с созданием базы данных EF.Entity Framework Основные инструменты при создании репозитория
В предыдущих версиях EF все это происходило автоматически, EF создавал базу данных, если она не существовала в первый раз, когда пыталась выполнить любую операцию над данными.
Теперь, как мне представляется, в документации по использованию EF Migrations. Инструкции по установке зависимостей и инструменты:
- Microsoft.EntityFrameworkCore.Design
- Microsoft.EntityFrameworkCore.Tools
и бежать dotnet ef migrations add MigrationName
вместе с dotnet ef database update
.
Теперь вот что происходит. Когда я создаю репозиторий, у меня есть проект AppName.Data
, где реализованы хранилища, и проект AppName.WebApi
, где хранятся хранилища.
Если я попытаюсь добавить инструменты и запустить dotnet ef
от AppName.Data
, это не сработает, потому что AppName.Data
- это библиотека. В сообщении об ошибке говорится, что этот инструмент можно использовать только в контексте одного исполняемого приложения.
Следующая попытка состояла в том, чтобы запустить dotnet ef
из AppName.WebApi
, который является исполняемым. Теперь dotnet ef
работает, но если я попробую dotnet ef migrations add InitialMigration
создать базу данных, я получаю одну ошибку, потому что DbContext
не находится на проекте AppName.WebApi
, но на другом проекте.
Я действительно не знаю, как это сделать. Поэтому, если я хочу, чтобы EF создавал базу данных и все это, и я хочу использовать репозитории, так что есть нет конкретного кода EF в исполняемом проекте, что мне делать?
В консоли диспетчера пакетов укажите проект, в котором находится applicationdbcontext, а затем запустите его. – Thennarasan