【问题标题】:How to set default Language in ABP framework?如何在 ABP 框架中设置默认语言?
【发布时间】:2021-05-26 16:40:15
【问题描述】:

我正在使用带有Blazor UI and EF Core 的 Abp 启动模板 我正在构建一个单一语言的网络应用程序,基本上想要摆脱所有其他语言并将土耳其语(“tr”)设置为默认语言/文化。

在无需安装任何第三方 NuGet 包(如Owl)的情况下,推荐的方式是什么?

请注意,我还是 Abp 框架的新手,所以请在你的答案中包含文件/项目名称(如果可能,请连同代码 sn-p)

【问题讨论】:

    标签: asp.net-core .net-core localization blazor abp


    【解决方案1】:

    要删除所有其他语言并默认使用土耳其语(“tr”),您可以更新ProjectName.HttpApi.Host 文件夹下的ProjectNameHttpApiHostModule 文件中的ConfigureLocalization 方法以包含唯一的tr。比如ConfigureLocalization方法的内容现在应该如下:

        private void ConfigureLocalization()
        {
            Configure<AbpLocalizationOptions>(options =>
            {
                options.Languages.Add(new LanguageInfo("tr", "tr", "Türkçe"));
            });
        }
    

    那么你应该在ProjectNameHttpApiHostModule文件中的OnApplicationInitialization方法中添加以下内容。

        var supportedCultures = new[]
        {
            new CultureInfo("tr")
        };
        app.UseAbpRequestLocalization(options =>
        {
            options.DefaultRequestCulture = new RequestCulture("tr");
            options.SupportedCultures = supportedCultures;
            options.SupportedUICultures = supportedCultures;
            options.RequestCultureProviders = new List<IRequestCultureProvider>
            {
                new QueryStringRequestCultureProvider(),
                new CookieRequestCultureProvider()
            };
        });
    

    更多信息请参见this issue

    【讨论】:

    • 如果其他人尝试此操作但失败:删除 cookie 以查看更改。
    猜你喜欢
    • 2019-04-21
    • 1970-01-01
    • 2016-12-25
    • 2022-06-23
    • 2014-09-14
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多