Обновление базы данных из моделей с использованием структуры сущностей в многопользовательском ядре .NET

Я использую структуру сущности.net core.

У меня мультитенантные БД. поэтому я сохранил одну базу данных корневого тенанта. и я хочу реплицировать эти изменения схемы на все другие базы данных, используя структуру сущностей. Я создаю свои модели, используя следующую команду.

Scaffold-DbContext "Data Source=(local);Initial Catalog=sampleTenantDb;Integrated Security=True" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Tenants -Force

Поэтому при создании нового клиента я просто использую

context.Database.EnsureCreated();

Но когда я добавляю новую таблицу в код, я хочу применить ее ко всем арендаторам. Так как мне это сделать?

Я пробовал следовать, но это не работает (не добавляя таблицы повторного использования)

myDbContext.Database.Migrate();

2 ответа

Решение

Если ваш DbContext создан с помощью Scaffold-DbContext, у него не будет никаких миграций. Это для рабочего процесса, ориентированного на базу данных, в котором вы применили бы изменения DDL к базам данных клиента с помощью сценария, возможно, созданного с помощью SQL Server Data Tools.

Вам необходимо создать несколько объектов dbcontext и передать строку подключения таким образом, чтобы вы могли обновить несколько db

Другие вопросы по тегам