using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components.Web; using BlazorT.Data; using Blazorise; using Blazorise.Bootstrap; using Blazorise.Icons.FontAwesome; using Blazored.LocalStorage; using BlazorT.Services; using Blazored.Modal; using Microsoft.AspNetCore.Localization; using System.Globalization; using Microsoft.Extensions.Options; using BlazorStrap; var builder = WebApplication.CreateBuilder(args); builder.Configuration.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true); // Add services to the container. builder.Services.AddRazorPages(); builder.Services.AddServerSideBlazor(); builder.Services.AddSingleton(); builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddBlazoredModal(); builder.Services.AddHttpClient(); builder.Services .AddBlazorise() .AddBootstrapProviders() .AddFontAwesomeIcons(); builder.Services.AddBlazoredLocalStorage(); // injection // 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") }; }); builder.Services.AddBlazorStrap(); builder.Services.AddSingleton(); builder.Services.AddSingleton(typeof(ILogger<>), typeof(Logger<>)); builder.Services.AddLogging((builder) => builder.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace)); 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(); ; // Get the current localization options 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.UseStaticFiles(); app.UseRouting(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); endpoints.MapBlazorHub(); endpoints.MapFallbackToPage("/_Host"); }); //app.MapFallbackToFile("Pages/Inventory.razor"); app.Run();