Opracowuję prostą aplikację internetową i, w przyszłości, chcę to zrobić jako multi-tenancy..NET Core pobiera ciąg połączenia z appsettings.json
Więc chcę pisać ciąg połączenia prosto OnConfiguring
metody: klasę
public class ApplicationContext : DbContext
{
public DbSet<User> Users { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("connection string from appsettings.json");
base.OnConfiguring(optionsBuilder);
}
}
startowy:
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<ApplicationContext>();
services.AddMvc();
}
Jak można wyodrębnić ciąg połączenia z appsettings.json
do ApplicationContext
klasie?
Nie chciałbym tworzyć żadnych konstruktorów dla klasy ApplicationContext
.
trzeba przekazać ciąg połączenia jako parametr do AddDbContext IIRC –
Dlaczego chcesz zarejestrować go na 'metody OnConfiguring' zamiast w 'services.AddDbContext (options => options UseSqlServer (" ... "))'? –
Tseng
@ Tseng Potrzebuję zmienić dynamicznie ciągów połączenia w przyszłości dla wielu dzierżawy. –