Я работаю с Asp.Net Core WebApi .
Могу ли я добавить свои таблицы в IdentityDbContext , например:
public class ApplicationDbContext : IdentityDbContext<User>
{
public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
: base(options)
{ }
public DbSet<ProgrammerRole> ProgrammerRoles { get; set; }
public DbSet<Project> Projects { get; set; }
public DbSet<SubProject> SubProjects { get; set; }
public DbSet<Report> Reports { get; set; }
}
Или мне нужно создать второй DbContext. И если я создам второй DbContext
как я могу общаться с пользователем в IdentityDbContext .
И мой второй вопрос:
Если я добавлю данные в IdentityDbContext , как указано выше, как мне получить данные из моих таблиц в ApplicationDbContext ?
Потому что мне нужно передавать DbContextOptions объект каждый раз, когда я создаю новый экземпляр ApplicationDbContext . Я делаю это в Startup.cs :
// ===== Add DbContext ========
var connectionString = Configuration.GetConnectionString("DbConnection");
services.AddDbContext<ApplicationDbContext>(options =>
options.UseSqlServer(connectionString));
В более старой версии Asp.Net Core я видел, что я могу передать строку подключения в конструкторе IdentityDbContext, но теперь только DbContextOptions.
И я не могу сделать, например, это:
[AllowAnonymous]
[HttpGet]
public IEnumerable<Project> GetRoles()
{
using (var db = new ApplicationDbContext())
{
return db.Projects;
}
}