Files
Berufsschule_HAM/src/Program.cs
2025-09-28 14:18:04 +02:00

49 lines
1.1 KiB
C#

using ElmahCore;
using ElmahCore.Mvc;
using Serilog;
using Berufsschule_HAM.Services;
var builder = WebApplication.CreateBuilder(args);
// Bind options
builder.Services.Configure<LdapOptions>(builder.Configuration.GetSection("Ldap"));
// Register LDAP service as singleton (it manages its own connection)
builder.Services.AddControllersWithViews();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
Log.Logger = new LoggerConfiguration()
.ReadFrom.Configuration(builder.Configuration)
.CreateLogger();
builder.Services.AddSerilog();
builder.Services.AddElmah<XmlFileErrorLog>(Options =>
{
Options.LogPath = builder.Configuration.GetValue<string>("Elmah:LogFolder") ?? "~/logs";
});
builder.Services.AddSingleton<LdapService>();
var app = builder.Build();
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Home/Error");
}
app.UseElmah();
app.UseSwagger();
app.UseSwaggerUI();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
app.Run();