From 2bc8fe53e11fd01a596c5f1c681fd65b0de8fee7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Mon, 28 May 2018 16:53:19 +0300 Subject: [PATCH] Added setting manager extensions. --- .../Volo.Abp.Settings.csproj.DotSettings | 2 ++ .../Volo/Abp/Settings/SettingManagerExtensions.cs | 10 ++++++++++ .../Volo/Abp/Settings/SettingManagerSyncExtensions.cs | 11 +++++++++++ 3 files changed, 23 insertions(+) create mode 100644 src/Volo.Abp.Settings/Volo.Abp.Settings.csproj.DotSettings diff --git a/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj.DotSettings b/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj.DotSettings new file mode 100644 index 0000000000..58ad6c8854 --- /dev/null +++ b/src/Volo.Abp.Settings/Volo.Abp.Settings.csproj.DotSettings @@ -0,0 +1,2 @@ + + CSharp71 \ No newline at end of file diff --git a/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerExtensions.cs b/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerExtensions.cs index 11aa6f05c2..d9f4f3950b 100644 --- a/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerExtensions.cs +++ b/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerExtensions.cs @@ -17,5 +17,15 @@ namespace Volo.Abp.Settings StringComparison.OrdinalIgnoreCase ); } + + public static async Task GetAsync([NotNull] this ISettingManager settingManager, [NotNull] string name, T defaultValue = default) + where T : struct + { + Check.NotNull(settingManager, nameof(settingManager)); + Check.NotNull(name, nameof(name)); + + var value = await settingManager.GetOrNullAsync(name); + return value?.To() ?? defaultValue; + } } } \ No newline at end of file diff --git a/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerSyncExtensions.cs b/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerSyncExtensions.cs index da45dd2c1e..0a8c7b2981 100644 --- a/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerSyncExtensions.cs +++ b/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingManagerSyncExtensions.cs @@ -19,5 +19,16 @@ namespace Volo.Abp.Settings return AsyncHelper.RunSync(settingManager.GetAllAsync); } + + public static T Get([NotNull] this ISettingManager settingManager, [NotNull] string name, T defaultValue = default) + where T : struct + { + return AsyncHelper.RunSync(() => settingManager.GetAsync(name, defaultValue)); + } + + public static bool IsTrue([NotNull] this ISettingManager settingManager, [NotNull] string name) + { + return AsyncHelper.RunSync(() => settingManager.IsTrueAsync(name)); + } } }