Browse Source

Merge pull request #1524 from colinin/fix-dynamic-localization-cache

fix: If the dynamic language cache is empty, the local cache will not…
pull/1492/merge
yx lin 2 months ago
committed by GitHub
parent
commit
26b034b2a4
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 5
      aspnet-core/modules/localization-management/LINGYUN.Abp.LocalizationManagement.Domain/LINGYUN/Abp/LocalizationManagement/DynamicLocalizationChangedEventHandler.cs
  2. 12
      aspnet-core/modules/localization-management/LINGYUN.Abp.LocalizationManagement.Domain/LINGYUN/Abp/LocalizationManagement/DynamicLocalizationInitializerEventHandler.cs

5
aspnet-core/modules/localization-management/LINGYUN.Abp.LocalizationManagement.Domain/LINGYUN/Abp/LocalizationManagement/DynamicLocalizationChangedEventHandler.cs

@ -32,7 +32,10 @@ public class DynamicLocalizationChangedEventHandler :
{
var resourcesCacheItem = await ResourcesCache.GetAsync(LocalizationResourcesCacheItem.CacheKey);
var languagesCacheItem = await LanguageCache.GetAsync(LocalizationLanguageCacheItem.CacheKey);
if (languagesCacheItem == null && resourcesCacheItem == null)
{
return;
}
foreach (var language in languagesCacheItem.Languages)
{
foreach (var resource in resourcesCacheItem.Resources)

12
aspnet-core/modules/localization-management/LINGYUN.Abp.LocalizationManagement.Domain/LINGYUN/Abp/LocalizationManagement/DynamicLocalizationInitializerEventHandler.cs

@ -120,6 +120,10 @@ public class DynamicLocalizationInitializerEventHandler :
using var unitOfWork = UnitOfWorkManager.Begin(true, true);
var cacheItems = await DynamicLanguageCache.GetManyAsync(eventData.Keys);
if (cacheItems == null)
{
return;
}
await SaveLanguagesAsync(cacheItems.Select(kv => kv.Value).ToArray());
@ -169,6 +173,10 @@ public class DynamicLocalizationInitializerEventHandler :
using var unitOfWork = UnitOfWorkManager.Begin(true, true);
var cacheItems = await DynamicResourceCache.GetManyAsync(eventData.Keys);
if (cacheItems == null)
{
return;
}
await SaveResourcesAsync(cacheItems.Select(kv => kv.Value).ToArray());
@ -229,6 +237,10 @@ public class DynamicLocalizationInitializerEventHandler :
var cacheItemDics = await DynamicTextCache.GetManyAsync(eventData.Keys);
var cacheItems = cacheItemDics.Select(kv => kv.Value).ToArray();
if (cacheItems == null)
{
return;
}
await SaveTextsAsync(cacheItems);

Loading…
Cancel
Save