diff --git a/Oqtane.Client/Services/Interfaces/ISettingService.cs b/Oqtane.Client/Services/Interfaces/ISettingService.cs
index 8e795e80..b2d7908f 100644
--- a/Oqtane.Client/Services/Interfaces/ISettingService.cs
+++ b/Oqtane.Client/Services/Interfaces/ISettingService.cs
@@ -164,6 +164,24 @@ namespace Oqtane.Services
///
Task UpdateSettingsAsync(Dictionary settings, string entityName, int entityId);
+ ///
+ /// Returns a specific setting
+ ///
+ ///
+ ///
+ ///
+ ///
+ Task DeleteSettingAsync(string entityName, int entityId, string settingName);
+
+ ///
+ /// Returns a specific setting
+ ///
+ ///
+ ///
+ ///
+ ///
+ Task> GetSettingsAsync(string entityName, int entityId, string settingName);
+
///
/// Returns a specific setting
///
diff --git a/Oqtane.Client/Services/SettingService.cs b/Oqtane.Client/Services/SettingService.cs
index 13177055..95442552 100644
--- a/Oqtane.Client/Services/SettingService.cs
+++ b/Oqtane.Client/Services/SettingService.cs
@@ -170,6 +170,23 @@ namespace Oqtane.Services
}
}
+ public async Task DeleteSettingAsync(string entityName, int entityId, string settingName)
+ {
+ var settings = await GetJsonAsync>($"{Apiurl}?entityname={entityName}&entityid={entityId}");
+ var setting = settings.FirstOrDefault(item => item.SettingName == settingName);
+ await DeleteAsync($"{Apiurl}/{setting.SettingId}/{entityName}");
+ }
+
+ public async Task> GetSettingsAsync(string entityName, int entityId, string settingName)
+ {
+ var settings = await GetJsonAsync>($"{Apiurl}?entityname={entityName}&entityid={entityId}");
+ if (!string.IsNullOrEmpty(settingName))
+ {
+ settings = settings.Where(item => item.SettingName == settingName).ToList();
+ }
+ return settings;
+ }
+
public async Task GetSettingAsync(string entityName, int settingId)
{
return await GetJsonAsync($"{Apiurl}/{settingId}/{entityName}");