我要将默认区域性更改为‘fr-FR’. 我在Program.cs中使用此代码,但‘en-us’是默认区域性. 请帮我解决这个问题.

builder.Services.Configure<RequestLocalizationOptions>(options =>
{
    var supportedCultures = new List<CultureInfo> {
        new CultureInfo("fr-FR"),
        new CultureInfo("en-US"),

    };
    options.DefaultRequestCulture = new RequestCulture(culture: "fr-FR", uiCulture: "fr-FR");
    options.SupportedCultures = supportedCultures;
    options.SupportedUICultures = supportedCultures;
    options.RequestCultureProviders.Insert(0, new QueryStringRequestCultureProvider());
});

    builder.Services.AddRazorPages();
    
    var app = builder.Build();
    
    // Configure the HTTP request pipeline.
    if (!app.Environment.IsDevelopment())
    {
        app.UseExceptionHandler("/Error");
    }
    app.UseStaticFiles();
    
    app.UseRequestLocalization(app.Services.GetRequiredService<IOptions<RequestLocalizationOptions>>().Value);
    
    app.UseRouting();
    
    app.UseAuthorization();
    
    app.MapRazorPages();
    
    app.Run();

此代码被忽略:

options.DefaultRequestCulture = new RequestCulture(culture: "fr-FR", uiCulture: "fr-FR");

推荐答案

您的设置工作正常."en-US"是允许的区域性,默认情况下,其中一个提供程序是AcceptLanguageHeaderRequestCultureProvider,它判断Accept-Language标头.默认情况下,该标头由您的浏览器发送(值为"en-US"或类似于此).如果不希望此标头影响选定的区域性,可以将其删除.例如,通过完全清除RequestCultureProviders:

options.RequestCultureProviders.Clear(); 
// add the one you have mentioned in the comments
options.RequestCultureProviders.Add(new QueryStringRequestCultureProvider());

Csharp相关问答推荐

需要更改哪些内容才能修复被覆盖的财产中的无效警告CS 8765?

等待限制选项似乎不适用于频道

EF Core Fluent API中定义的多对多关系

有没有一种方法可以防止在编译时在MicrosoftC或非单线程上下文中调用方法?

我需要两个属性类吗

WPF DataGrid中的三维数据

有没有办法在WPF文本框中添加复制事件的处理程序?

如何将不同类型的扩展参数的javascript函数转换成C#风格?

如何从ASP.NET核心MVC视图和Blazor传递数据

如何将此方法参数化并使其更灵活?

我的MRG32k3a算法实现返回的数字超出了预期的[0,1]范围

HttpRequestMessage.SetPolicyExecutionContext不会将上下文传递给策略

C#System.Commandline:如何向命令添加参数以便向其传递值?

Linq SELECT的多条指令

仅在ASP.NETCore应用程序中的附加单独端口上公开一组终结点

将两个for循环更改为一条LINQ语句

在C#中通过Matheval使用自定义公式

将文本从剪贴板粘贴到RichTextBox时,新文本不会在RichTextBox ForeColor中着色

XmlSerializer在遇到XML属性(命名空间)时崩溃

C#、Visual Studio代码、调试器、错误处理变量请求.未知错误:0x80131502,