using BankBusinessLogic.BusinessLogics; using BankContracts.BusinessLogicsContracts; using BankContracts.StoragesContracts; using BankDatabaseImplement.Implements; using Microsoft.OpenApi.Models; var builder = WebApplication.CreateBuilder(args); builder.Logging.SetMinimumLevel(LogLevel.Trace); builder.Logging.AddLog4Net("log4net.config"); // Add services to the container. builder.Services.AddTransient<IDealStorage, DealStorage>(); builder.Services.AddTransient<IPaymentStorage, PaymentStorage>(); builder.Services.AddTransient<ITransferStorage, TransferStorage>(); builder.Services.AddTransient<IOperatorStorage, OperatorStorage>(); builder.Services.AddTransient<ICreditProgramStorage, CreditProgramStorage>(); builder.Services.AddTransient<ICurrencyStorage, CurrencyStorage>(); builder.Services.AddTransient<ICurrencyPurchaseStorage, CurrencyPurchaseStorage>(); builder.Services.AddTransient<IBankOperatorStorage, BankOperatorStorage>(); builder.Services.AddTransient<IDealLogic, DealLogic>(); builder.Services.AddTransient<IPaymentLogic, PaymentLogic>(); builder.Services.AddTransient<ITransferLogic, TransferLogic>(); builder.Services.AddTransient<IOperatorLogic, OperatorLogic>(); builder.Services.AddTransient<IBankOperatorLogic, BankOperatorLogic>(); builder.Services.AddTransient<ICurrencyLogic, CurrencyLogic>(); builder.Services.AddTransient<ICurrencyPurchaseLogic, CurrencyPurchaseLogic>(); builder.Services.AddTransient<ICreditProgramLogic, CreditProgramLogic>(); builder.Services.AddControllers(); // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "BankRestApi", Version = "v1" }); }); var app = builder.Build(); // Configure the HTTP request pipeline. if (app.Environment.IsDevelopment()) { app.UseSwagger(); app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "BankRestApi v1")); } app.UseHttpsRedirection(); app.UseAuthorization(); app.MapControllers(); app.Run();