namespace Diligent.WebAPI.Host.Extensions
{
[ExcludeFromCodeCoverage]
public static class HostConfigurationExtension
{
///
/// Services configuration
///
public static void ConfigureHost(this WebApplicationBuilder builder)
{
builder.ConfigureCors();
builder.ConfigureMailServer();
builder.ConfigureAuth();
builder.ConfigureIdentity();
builder.ConfigureValidationMiddleware();
builder.ConfigureSwagger();
IServiceCollection services = builder.Services;
services.AddMemoryCache();
services.AddHttpContextAccessor();
services.AddControllers();
services.AddEndpointsApiExplorer();
}
///
/// App configuration
///
public static void ConfigureHost(this WebApplication app)
{
app.UseCors("CorsPolicy");
app.UseCorrelationId();
app.MapControllers();
app.SetupData();
// custom jwt auth middleware
app.UseMiddleware();
app.UseDiligExceptionHandler();
app.ConfigureSwagger();
}
}
}