首页 > 解决方案 > Umbraco 7 - 通过代码更新字典项的值

问题描述

有 Umbraco 的 Dictionary 部分,其中包含它的所有项目。
我正在尝试找到一种方法来通过我的代码(.NET)更新特定项目的值。
我知道如何获取价值,但不知道如何设置和更新它。
有什么建议吗?

标签: c#.netumbracoumbraco7

解决方案


如果您使用Umbraco 的 LocalizationService来创建字典项并以编程方式获取它们,那么这就是您更新现有字典项值的方式;

// Get the existing dictionary item to delete it
var dictionaryItem = _localizationService.GetDictionaryItemByKey(data.Key);
    
// Get all languages
var allActiveLanguages=_localizationService.GetAllLanguages();
                        
// Set your language - I only have one language, which is why I'm getting the first one here
var language = allActiveLanguages.FirstOrDefault();
    
                        
if (language != null)
{
 _localizationService.AddOrUpdateDictionaryValue(dictionaryItem, language, "New dictionary value is here!!");
}

// Save your updates    
_localizationService.Save(dictionaryItem);

PS:下图是您如何使用 ILocationService。

PSS:更多代码示例,请看这里。

在此处输入图像描述

在此处输入图像描述


推荐阅读