Browse Source
Optimize permission lookup in SettingManagementStore.
pull/23622/head
maliming
1 year ago
No known key found for this signature in database
GPG Key ID: A646B9CB645ECEA4
1 changed files with
3 additions and
2 deletions
-
modules/setting-management/src/Volo.Abp.SettingManagement.Domain/Volo/Abp/SettingManagement/SettingManagementStore.cs
|
|
|
@ -176,9 +176,10 @@ public class SettingManagementStore : ISettingManagementStore, ITransientDepende |
|
|
|
string providerKey, |
|
|
|
List<string> notCacheKeys) |
|
|
|
{ |
|
|
|
var settingDefinitions = (await SettingDefinitionManager.GetAllAsync()).Where(x => notCacheKeys.Any(k => GetSettingNameFormCacheKeyOrNull(k) == x.Name)); |
|
|
|
var settingNames = new HashSet<string>(notCacheKeys.Select(GetSettingNameFormCacheKeyOrNull)); |
|
|
|
var settingDefinitions = (await SettingDefinitionManager.GetAllAsync()).Where(x => settingNames.Contains(x.Name)); |
|
|
|
|
|
|
|
var settingsDictionary = (await SettingRepository.GetListAsync(notCacheKeys.Select(GetSettingNameFormCacheKeyOrNull).ToArray(), providerName, providerKey)) |
|
|
|
var settingsDictionary = (await SettingRepository.GetListAsync(settingNames.ToArray(), providerName, providerKey)) |
|
|
|
.ToDictionary(s => s.Name, s => s.Value); |
|
|
|
|
|
|
|
var cacheItems = new List<KeyValuePair<string, SettingCacheItem>>(); |
|
|
|
|