1. 通过配置文件设置
"Settings": {"Abp.Localization.DefaultLanguage": "zh-Hans"}
2. 在Startup文件中设置
public void Configure(IApplicationBuilder app){app.InitializeApplication();//设置默认语言app.ApplicationServices.GetService<ISettingDefinitionManager>().Get(LocalizationSettingNames.DefaultLanguage).DefaultValue = "zh-Hans";}
3. 在YourProjectNameWebModule文件中设置
public override void OnApplicationInitialization(ApplicationInitializationContext context){var app = context.GetApplicationBuilder();var env = context.GetEnvironment();// …… 此处省略其他代码//app.UseAbpRequestLocalization();// 可以生效//app.UseAbpRequestLocalization(options => options.DefaultRequestCulture = new RequestCulture("zh-Hans"));// 可以生效app.UseAbpRequestLocalization(optios => optios.SetDefaultCulture("zh-hans"));}
4. 通过数据库设置
INSERT INTO public."AbpSettings"("Id", "Name", "Value", "ProviderName", "ProviderKey")VALUES('c5727077-5c7f-14b8-cafc-39f45add56ba', 'Abp.Localization.DefaultLanguage', 'zh-hans', 'Global', '');
5. 以上设置不生效
如果以上设置不生效,可能是浏览器导致的。
// 微软内置从三个地方获取本地化:QueryString、Cookie、Header:accept-heade// 浏览器中文的Culture字符串是zh-CN与Abp的zh-Hans不匹配// 故而清除此provider// 注意:别忘记清除下Cookieapp.UseAbpRequestLocalization(options =>options.RequestCultureProviders.RemoveAll(provider => provider is AcceptLanguageHeaderRequestCultureProvider));
最后,如果没有国际化需求,则可以只设置中文。
Configure<AbpLocalizationOptions>(options =>{options.Languages.Add(new LanguageInfo("zh-Hans", "zh-Hans", "简体中文"));//options.Languages.Add(new LanguageInfo("en", "en", "English"));});
