/
romanryazh
/
ProductionManagement
Обзор
Документация
Войти
/
romanryazh
/
ProductionManagement
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
develop
ProductionManagement.WebApi/Program.cs
51 строка
2 KB
Roman Ryazh
Реализация первой задачи. Добавлены сущности ProductType и EquipmentType, CRUD операции для них, реализованы необходимые для работы сервисы и компоненты конвейера.
10 авг 2025, 18:27
10 авг 2025, 18:27
a847bf0
Код
Авторство
О чём код?
using System.Reflection; using Microsoft.EntityFrameworkCore; using ProductionManagement.Application; using ProductionManagement.Application.Controllers; using ProductionManagement.Infrastructure; using ProductionManagement.WebApi.Middlewares; var builder = WebApplication.CreateBuilder(args); builder.Services.AddExceptionHandler<ExceptionHandlingMiddleware>(); builder.Services.AddProblemDetails(); builder.Services.AddInfrastructure(builder.Configuration); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(options => { options.SwaggerDoc("v1", new() { Title = "Production Management API", Version = "v1" }); var xmlFile = $"{Assembly.GetExecutingAssembly().GetName().Name}.xml"; var xmlPath = Path.Combine(AppContext.BaseDirectory, xmlFile); options.IncludeXmlComments(xmlPath); var applicationXmlFile = $"{Assembly.GetAssembly(typeof(ProductTypesController))?.GetName().Name}.xml"; var applicationXmlPath = Path.Combine(AppContext.BaseDirectory, applicationXmlFile); options.IncludeXmlComments(applicationXmlPath); }); builder.Services.AddControllers(); var app = builder.Build(); if (app.Environment.IsDevelopment()) { app.UseSwagger(); app.UseSwaggerUI(); } using (var scope = app.Services.CreateScope()) { var services = scope.ServiceProvider; var context = services.GetRequiredService<AppDbContext>(); context.Database.Migrate(); } app.UseExceptionHandler(); app.UseHttpsRedirection(); app.UseAuthorization(); app.MapControllers(); app.Run();