如何在 nopCommerce 3.9 中获取语言文化的语言 ID?

How to get language ID for a language culture in nopCommerce 3.9?

使用 nopCommerce 3.9 如果我只知道语言文化,如何找到语言的 LanguageId(存储在 nopCommerce 数据库中的 ID)?

例如,当我想在我的插件的 Install() 方法中添加语言环境资源时,我可以通过将文化指定为字符串值

来实现
this.AddOrUpdatePluginLocaleResource("Plugins.Payment.CheckMoneyOrder.AdditionalFee",
     "Additional fee", "en-US");

但其他方法需要语言 ID,并且不接受区域性字符串。 (例如 SaveLocalizedSetting 设置的扩展方法)

checkMoneyOrderPaymentSettings.SaveLocalizedSetting(x => x.DescriptionText,
                    languageId, //how to find out the ID for "en-US"
                    "my localized text");

如果我只知道执行时的语言环境资源,我如何获得 "en-US" 的 ID?

您可以试试下面的代码。在您的插件中添加引用 Nop.Services。

var langId = _languageService.GetAllLanguages().Where(x => x.LanguageCulture == "en-US").FirstOrDefault().Id;