using BlazorApp1.Data; using BlazorApp1.Services; using Blazored.LocalStorage; using Blazored.Modal; using Blazorise; using Blazorise.Bootstrap; using Blazorise.Icons.FontAwesome; using Microsoft.AspNetCore.Localization; using Microsoft.Extensions.Options; using System.Globalization; using Microsoft.Extensions.Logging; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddRazorPages(); builder.Services.AddServerSideBlazor(); builder.Services.AddSingleton(); builder.Services.AddHttpClient(); builder.Services .AddBlazorise() .AddBootstrapProviders() .AddFontAwesomeIcons(); builder.Services.AddBlazoredLocalStorage(); builder.Services.AddScoped(); builder.Services.AddBlazoredModal(); builder.Services.AddScoped(); builder.Logging.AddConfiguration(builder.Configuration.GetSection("Logging")); // Add the controller of the app builder.Services.AddControllers(); // Add the localization to the app and specify the resources path builder.Services.AddLocalization(opts => { opts.ResourcesPath = "Resources"; }); // Configure the localtization builder.Services.Configure(options => { // Set the default culture of the web site options.DefaultRequestCulture = new RequestCulture(new CultureInfo("en-US")); // Declare the supported culture options.SupportedCultures = new List { new CultureInfo("en-US"), new CultureInfo("fr-FR") }; options.SupportedUICultures = new List { new CultureInfo("en-US"), new CultureInfo("fr-FR") }; }); var app = builder.Build(); // Configure the HTTP request pipeline. if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRouting(); var options = ((IApplicationBuilder)app).ApplicationServices.GetService>(); if (options?.Value != null) { // use the default localization app.UseRequestLocalization(options.Value); } // Add the controller to the endpoint app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); app.MapBlazorHub(); app.MapFallbackToPage("/_Host"); app.Run();