/
AMachine
/
MMDB_Backend
Обзор
Документация
Войти
/
AMachine
/
MMDB_Backend
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
MMDB.WebApi/Program.cs
59 строк
2 KB
AssaultMachine
теперь миграции применяются только при запуске приложения
28 май 2025, 13:43
28 май 2025, 13:43
af1c204
Код
Авторство
О чём код?
using Microsoft.EntityFrameworkCore; using Microsoft.OpenApi.Models; using MMDB.Application.Extensions; using MMDB.Data; using MMDB.Data.Extensions; using MMDB.Infrastructure; using MMDB.Infrastructure.Extensions; using MMDB.WebApi.Extensions; var builder = WebApplication.CreateBuilder(args); builder.Services.Configure<UserOptions>(builder.Configuration.GetSection("UserOptions")); builder.Services.Configure<JwtOptions>(builder.Configuration.GetSection("JwtOptions")); builder.Services.Configure<CookiePolicyOptions>(options => options.OnAppendCookie = context => { if (context.CookieOptions.Secure && context.CookieOptions.SameSite == SameSiteMode.None) context.CookieOptions.Extensions.Add("Partitioned"); } ); builder.Services.AddSwaggerGen(); builder.Services.AddControllers(); builder.Services.AddDataAccess(builder.Configuration); builder.Services.AddDataMapper(); builder.Services.AddApiMapper(); builder.Services.AddApplicationServices(); builder.Services.AddInfrastructure(); builder.Services.AddJwtAuthentication(builder.Configuration); var app = builder.Build(); using (var scope = app.Services.CreateScope()) { var db = scope.ServiceProvider.GetRequiredService<AppDbContext>(); db.Database.Migrate(); } if (app.Environment.IsDevelopment()) { app.UseSwagger(c => c.PreSerializeFilters.Add((swagger, request) => { var serverUrl = builder.Configuration["SwaggerUrl"]; swagger.Servers = new List<OpenApiServer> { new OpenApiServer { Url = serverUrl } }; })); app.UseSwaggerUI(); } app.UseCors(x => { x.WithHeaders().AllowAnyHeader(); x.WithOrigins(builder.Configuration["FrontendHost"]!); x.WithMethods().AllowAnyMethod(); x.AllowCredentials().WithOrigins(builder.Configuration["FrontendHost"]!); }); app.MapControllers(); app.Run();