本文整理汇总了C#中ISettingService.GetSettingByKey方法的典型用法代码示例。如果您正苦于以下问题:C# ISettingService.GetSettingByKey方法的具体用法?C# ISettingService.GetSettingByKey怎么用?C# ISettingService.GetSettingByKey使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ISettingService
的用法示例。
在下文中一共展示了ISettingService.GetSettingByKey方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: IsPluginReady
/// <summary>
/// Determines whether a plugin is installed and activated for a particular store.
/// </summary>
public static bool IsPluginReady(this IPluginFinder pluginFinder, ISettingService settingService, string systemName, int storeId)
{
try
{
var pluginDescriptor = pluginFinder.GetPluginDescriptorBySystemName(systemName);
if (pluginDescriptor != null && pluginDescriptor.Installed)
{
if (storeId == 0 || settingService.GetSettingByKey<string>(pluginDescriptor.GetSettingKey("LimitedToStores")).ToIntArrayContains(storeId, true))
return true;
}
}
catch (Exception exc)
{
exc.Dump();
}
return false;
}
示例2: GetOverrideKeys
public void GetOverrideKeys(object settings, object model, int storeId, ISettingService settingService, bool isRootModel = true)
{
if (storeId <= 0)
return; // single store mode -> there are no overrides
var data = Data;
if (data == null)
data = new StoreDependingSettingData();
var settingName = settings.GetType().Name;
var properties = settings.GetType().GetProperties();
var modelType = model.GetType();
foreach (var prop in properties)
{
var name = prop.Name;
var modelProperty = modelType.GetProperty(name);
if (modelProperty == null)
continue; // setting is not configurable or missing or whatever... however we don't need the override info
var key = settingName + "." + name;
var setting = settingService.GetSettingByKey<string>(key, storeId: storeId);
if (setting != null)
data.OverrideSettingKeys.Add(key);
}
if (isRootModel)
{
data.ActiveStoreScopeConfiguration = storeId;
data.RootSettingClass = settingName;
_viewData[ViewDataKey] = data;
}
}