From 16d74d016cd19b86033b1eb5b0ae0d6c8e659141 Mon Sep 17 00:00:00 2001 From: Nikolaj Geisle <70372949+Zeegaan@users.noreply.github.com> Date: Tue, 10 May 2022 12:30:25 +0200 Subject: [PATCH] Fix PerformGetAll --- .../Implement/UserGroupRepository.cs | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs index f2a90933bf..03215f1bc8 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/UserGroupRepository.cs @@ -202,7 +202,16 @@ namespace Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement AppendGroupBy(sql); sql.OrderBy(x => x.Id); // required for references - var dtos = Database.FetchOneToMany(x => x.UserGroup2AppDtos, sql); + List dtos = Database.FetchOneToMany(x => x.UserGroup2AppDtos, sql); + + IDictionary> dic = GetAllUserGroupLanguageGrouped(); + + foreach (UserGroupDto dto in dtos) + { + dic.TryGetValue(dto.Id, out var userGroup2LanguageDtos); + dto.UserGroup2LanguageDtos = userGroup2LanguageDtos ?? new(); + } + return dtos.Select(x=>UserGroupFactory.BuildEntity(_shortStringHelper, x)); } @@ -371,6 +380,15 @@ namespace Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement return Database.Fetch(query); } + private IDictionary> GetAllUserGroupLanguageGrouped() + { + Sql query = Sql() + .Select() + .From(); + List userGroupLanguages = Database.Fetch(query); + return userGroupLanguages.GroupBy(x => x.UserGroupId).ToDictionary(x => x.Key, x => x.ToList()); + } + #endregion ///