From 7aa859953593207001cbfe32876cfb5519eb4bc1 Mon Sep 17 00:00:00 2001 From: ThompsonNye Date: Fri, 13 Jun 2025 19:39:37 +0200 Subject: [PATCH] Update request localization --- .../Common/DependencyInjectionExtensions.cs | 25 ++++++++++++++++--- .../Common/StartupExtensions.cs | 10 +------- 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/src/Vegasco.Server.Api/Common/DependencyInjectionExtensions.cs b/src/Vegasco.Server.Api/Common/DependencyInjectionExtensions.cs index a36b59b..7cccca9 100644 --- a/src/Vegasco.Server.Api/Common/DependencyInjectionExtensions.cs +++ b/src/Vegasco.Server.Api/Common/DependencyInjectionExtensions.cs @@ -3,7 +3,9 @@ using FluentValidation; using Microsoft.AspNetCore.Authentication.JwtBearer; using Microsoft.Extensions.Options; using System.Diagnostics; +using System.Globalization; using System.Reflection; +using Microsoft.AspNetCore.Localization; using Vegasco.Server.Api.Authentication; using Vegasco.Server.Api.Common; using Vegasco.Server.Api.Persistence; @@ -29,11 +31,11 @@ public static class DependencyInjectionExtensions private static IServiceCollection AddMiscellaneousServices(this IServiceCollection services) { - services.AddSingleton(sp => + services.AddSingleton(() => { - var assemblyName = Assembly.GetExecutingAssembly() - .GetName() - .Name ?? "Vegasco.Server.Api"; + string assemblyName = Assembly.GetExecutingAssembly() + .GetName() + .Name ?? "Vegasco.Server.Api"; return new ActivitySource(assemblyName); }); @@ -49,6 +51,21 @@ public static class DependencyInjectionExtensions services.AddHttpContextAccessor(); services.AddHostedService(); + + services.AddRequestLocalization(o => + { + string[] cultures = + [ + "en-US", + "en", + "de-DE", + "de" + ]; + + o.SetDefaultCulture(cultures[0]) + .AddSupportedCultures(cultures) + .AddSupportedUICultures(cultures); + }); return services; } diff --git a/src/Vegasco.Server.Api/Common/StartupExtensions.cs b/src/Vegasco.Server.Api/Common/StartupExtensions.cs index be0f48e..4c1d06d 100644 --- a/src/Vegasco.Server.Api/Common/StartupExtensions.cs +++ b/src/Vegasco.Server.Api/Common/StartupExtensions.cs @@ -23,15 +23,7 @@ internal static class StartupExtensions { app.UseRequestLocalization(o => { - o.SupportedCultures = - [ - new CultureInfo("en") - ]; - - o.SupportedUICultures = o.SupportedCultures; - - CultureInfo defaultCulture = o.SupportedCultures[0]; - o.DefaultRequestCulture = new RequestCulture(defaultCulture); + o.ApplyCurrentCultureToResponseHeaders = true; }); app.UseHttpsRedirection();