В однопользовательском режиме. NET Базовые приложения, миграции базы данных EF Core (и заполнение БД) могут выполняться сразу после создания IHost (обычно в Program.cs):
await BuildHost(args)
.MigrateDbContext<I.MyDbContext>()
.RunAsync();
}
поскольку к этому моменту был зарегистрирован единственный-единственный контекст БД.
В мультитенантных приложениях специфичные для арендатора c регистрации выполняются намного позже - в multitenantContainer.ConfigureTenant(...)
обратный вызов - как только HTTPContext станет доступным.
Проблема заключается в том, что после выполнения этого обратного вызова, похоже, не существует места, где можно получить контекст c, определяемый арендатором, для вызова Миграция.
Я уверен, что это неправильно делать в конце обратного вызова multitenantContainer.ConfigureTenant(...)
, поскольку функция этого, по-видимому, состоит исключительно из регистрации компонента.
Где должна выполняться миграция от