Я использую кодовый шаблон для создания БД.У меня уже есть настройка DbContext / DB.Теперь я решил добавить поддержку аутентификации, используя Identity.EntityFrameworkCore.Я создал еще один DbContext для таблиц, связанных с идентификацией, как показано ниже:
public class AccountDbContext:IdentityDbContext
{
public AccountDbContext(DbContextOptions<AccountDbContext> options) : base(options)
{
}
}
Я добавил вышеупомянутый DbContext в startup.cs, как показано ниже:
services.AddDbContext<AccountDbContext>(o => o.UseSqlServer(Configuration.GetConnectionString("TESTDB")));
И наконец:
dbContext.Database.EnsureCreated();
Но поскольку TESTDB уже связан с существующим контекстом БД, он уже создан.Поэтому я думаю, что вызов функции - EnsureCreated () ничего не сделает и просто вернется.
Мои вопросы:
Есть ли способ избежать создания дублирующего контекста для IdentityContext и каким-либо образом добавить его в существующий контекст БД?
Если я расскажу об отдельном DbContext, как описано выше (но с использованием той же существующей БД), как обеспечить автоматическое создание таблиц удостоверений / ролей?