private TranslatedDictionary <string[]> GetGroupedUrlValuesForImportLanguages(string[] importLanguages, LocalizedMetadataElements localizedMetadataElements) { if (localizedMetadataElements == null) { return(null); } return(AddLanguageFallback(importLanguages, new TranslatedDictionary <string[]>(localizedMetadataElements .Where(localizedMetadataElement => importLanguages.Contains(localizedMetadataElement.Culture) || localizedMetadataElement.Culture == "en") .GroupBy(localizedMetadataElement => localizedMetadataElement.Culture) .ToDictionary(group => group.Key, group => group.Select(localizedMetadataElement => localizedMetadataElement.Metadata_element.Url).ToArray()) ))); }
private IList <SmintIoMetadataElement> GetGroupedMetadataElementsForImportLanguages(string[] importLanguages, LocalizedMetadataElements localizedMetadataElements) { return(localizedMetadataElements .Where(localizedMetadataElement => importLanguages.Contains(localizedMetadataElement.Culture) || localizedMetadataElement.Culture == "en") .GroupBy(localizedMetadataElement => localizedMetadataElement.Metadata_element.Key) .Select((group) => { return new SmintIoMetadataElement() { Key = group.Key, Values = AddLanguageFallback( importLanguages, new TranslatedDictionary <string>(group.ToDictionary( metadataElement => metadataElement.Culture, metadataElement => metadataElement.Metadata_element.Name )) ) }; }) .ToList()); }