零框架多租户设计方案

This commit is contained in:
administrator committed 2024-04-28 16:00:15 +08:00
1 parent b7caaa2d0c
commit b4a704526d
42 files changed
+1002 -1

No files matched your search

@@ -0,0 +1,42 @@
using MultiTenancySample.DatabaseIsolationService.EntityFrameworks;
using MultiTenancySample.ServiceDefaults;
var builder = WebApplication.CreateBuilder(args);
// Add services to the container.
builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
builder.Services.AddDbContextFactory<DatabaseIsolationServiceDbContext>(lifetime: ServiceLifetime.Scoped);
builder.Services.AddScoped<DataSeeding>();
builder.Services.AddHttpContextAccessor();
builder.Services.AddMultiTenancy();
var app = builder.Build();
app.UseMultiTenancy();
var serviceProvider = app.Services.CreateScope().ServiceProvider;
var dataSeeding = serviceProvider.GetRequiredService<DataSeeding>();
await dataSeeding.SeedDataAsync();
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
app.UseSwagger();
app.UseSwaggerUI();
}
app.UseHttpsRedirection();
app.UseAuthorization();
app.MapControllers();
app.Run();