public async Task<LanguageDto> GetLanguageByIsoCode(string isoCode) { var lang = await _languagesRepository.Collection.Find(x => x.IsoCode == isoCode).FirstOrDefaultAsync(); if (lang != null) { var translation = lang.Translations.FirstOrDefault(xx => (xx.IsoCode == isoCode) || (xx.IsoCode == "en-US")); var result = new LanguageDto { LanguageId = lang.Id, EnglishName = lang.EnglishName, IsoCode = lang.IsoCode, CustomCode = lang.CustomCode, TranslatedName = translation?.TranslationText }; return result; } return null; }
public async Task<LanguageDto> GetLanguage(string languageId) { var lang = await _languagesRepository.Collection.Find(x => x.Id == languageId).FirstOrDefaultAsync(); if (lang == null) return null; var result = new LanguageDto { LanguageId = lang.Id, EnglishName = lang.EnglishName, IsoCode = lang.IsoCode, CustomCode = lang.CustomCode }; var translatedList = lang.Translations; var translatedItem = translatedList?.FirstOrDefault(xx => xx.IsoCode == lang.IsoCode); if (translatedItem != null) result.TranslatedName = translatedItem.TranslationText; return result; }