diff --git a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IDynamicSettingDefinitionStore.cs b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IDynamicSettingDefinitionStore.cs index 17f5029cd1..474649ef79 100644 --- a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IDynamicSettingDefinitionStore.cs +++ b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IDynamicSettingDefinitionStore.cs @@ -10,5 +10,5 @@ public interface IDynamicSettingDefinitionStore Task> GetAllAsync(); - Task GetOrNullAsync([NotNull] string name); + Task GetOrNullAsync([NotNull] string name); } diff --git a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionManager.cs b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionManager.cs index d21a2f8b4c..ae127f2633 100644 --- a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionManager.cs +++ b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/ISettingDefinitionManager.cs @@ -13,5 +13,5 @@ public interface ISettingDefinitionManager Task> GetAllAsync(); [ItemCanBeNull] - Task GetOrNullAsync([NotNull] string name); + Task GetOrNullAsync([NotNull] string name); } diff --git a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IStaticSettingDefinitionStore.cs b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IStaticSettingDefinitionStore.cs index a5aae07533..c3fadeb294 100644 --- a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IStaticSettingDefinitionStore.cs +++ b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/IStaticSettingDefinitionStore.cs @@ -10,5 +10,5 @@ public interface IStaticSettingDefinitionStore Task> GetAllAsync(); - Task GetOrNullAsync([NotNull] string name); + Task GetOrNullAsync([NotNull] string name); } diff --git a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/NullDynamicSettingDefinitionStore.cs b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/NullDynamicSettingDefinitionStore.cs index f814f071af..8ff0a5b3f7 100644 --- a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/NullDynamicSettingDefinitionStore.cs +++ b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/NullDynamicSettingDefinitionStore.cs @@ -8,7 +8,8 @@ namespace Volo.Abp.Settings; public class NullDynamicSettingDefinitionStore : IDynamicSettingDefinitionStore, ISingletonDependency { - private readonly static Task CachedSettingResult = Task.FromResult((SettingDefinition)null); + private readonly static Task CachedNullableSettingResult = Task.FromResult((SettingDefinition?)null); + private readonly static Task CachedSettingResult = Task.FromResult((SettingDefinition)null!); private readonly static Task> CachedSettingsResult = Task.FromResult((IReadOnlyList)Array.Empty().ToImmutableList()); @@ -22,8 +23,8 @@ public class NullDynamicSettingDefinitionStore : IDynamicSettingDefinitionStore, return CachedSettingsResult; } - public Task GetOrNullAsync(string name) + public Task GetOrNullAsync(string name) { - return CachedSettingResult; + return CachedNullableSettingResult; } } diff --git a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionManager.cs b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionManager.cs index 3cc3a49783..091df4cb80 100644 --- a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionManager.cs +++ b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/SettingDefinitionManager.cs @@ -28,7 +28,7 @@ public class SettingDefinitionManager : ISettingDefinitionManager, ISingletonDep return permission; } - public virtual async Task GetOrNullAsync(string name) + public virtual async Task GetOrNullAsync(string name) { Check.NotNull(name, nameof(name)); diff --git a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/StaticSettingDefinitionStore.cs b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/StaticSettingDefinitionStore.cs index 2421e4f877..653ee935f7 100644 --- a/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/StaticSettingDefinitionStore.cs +++ b/framework/src/Volo.Abp.Settings/Volo/Abp/Settings/StaticSettingDefinitionStore.cs @@ -44,7 +44,7 @@ public class StaticSettingDefinitionStore : IStaticSettingDefinitionStore, ISing return Task.FromResult>(SettingDefinitions.Value.Values.ToImmutableList()); } - public virtual Task GetOrNullAsync(string name) + public virtual Task GetOrNullAsync(string name) { return Task.FromResult(SettingDefinitions.Value.GetOrDefault(name)); } @@ -62,7 +62,7 @@ public class StaticSettingDefinitionStore : IStaticSettingDefinitionStore, ISing foreach (var provider in providers) { - provider.Define(new SettingDefinitionContext(settings)); + provider?.Define(new SettingDefinitionContext(settings)); } }