public bool DeleteValue(string section, string key)
{
Argument.IsNotNullOrWhitespace(() => section);
Argument.IsNotNullOrWhitespace(() => key);
try
{
var valuesListKey = GetSectionValuesListKey(section);
var keysString = _configurationService.GetRoamingValue<string>(valuesListKey);
if (string.IsNullOrEmpty(keysString))
{
return true;
}
var newKeys = keysString.Split(Separator).Where(x => !string.Equals(x, key));
keysString = string.Join(Separator.ToString(), newKeys);
_configurationService.SetRoamingValue(valuesListKey, keysString);
var valueKey = GetSectionValueKey(section, key);
_configurationService.SetRoamingValue(valueKey, string.Empty);
}
catch
{
return false;
}
return true;
}