Невозможно увидеть DbContext из другого проекта в ядре asp. net - PullRequest
1 голос
/ 29 мая 2020

У меня есть проект веб-API «Reactivities» и другой проект «Persisitence» для размещения моего DbContext. Когда я пытаюсь использовать добавленную миграцию в Reactivities, используя этот синтаксис в консоли add-migration InitalCreate -Context .\Persistence, я получаю эту ошибку: No DbContext named '.\Persistence' was found.

Даже если я использую add-migration InitialCreate -Context .\Persistence\DataContext, я все равно получаю ту же ошибку,

Это в моем классе запуска в Reactivities

services.AddDbContext<DataContext>(opt =>
            {
                opt.UseSqlite(Configuration.GetConnectionString("DefaultConnection"));
            });

Не могли бы вы помочь мне сделать это правильно? Спасибо.

1 Ответ

1 голос
/ 29 мая 2020

Вы должны выполнить миграцию в проекте, который создает экземпляр dbcontext, в моем случае я создал проект dbmigrator с классом, наследующим IDesignTimeDbContextFactory<T>, где T - тип dbcontext.

Это позволяет мне иметь проект с dbcontexts, проект, который работает с миграциями, и проект, который использует dbcontexts независимо друг от друга.

В этом руководстве показано, как использовать упомянутый мной интерфейс: https://codingblast.com/entityframework-core-idesigntimedbcontextfactory/

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