/// <summary> /// Includes new or updates existed localized string. /// </summary> /// <param name="?"></param> public static void AddOrUpdateString(this QuestionElement dbEntity, QuestionElementString localizedString) { var existedString = dbEntity.LocalizedStrings.FirstOrDefault(s => s.Language.Equals(localizedString.Language)); if (existedString == null) { dbEntity.LocalizedStrings.Add(localizedString); } else { existedString.UpdateWith(localizedString); } }
/// <summary> /// Updates data of question element. /// </summary> /// <param name="customerId">The customer identifier.</param> /// <param name="questionElementId">The question element identifier.</param> /// <param name="localizedString">The localized string.</param> /// <returns></returns> public async Task <QuestionElement> UpdateLocalizedString( int customerId, Guid questionElementId, QuestionElementString localizedString ) { var dbEntity = await Get(customerId, questionElementId); if (dbEntity == null) { return(null); } dbEntity.AddOrUpdateString(localizedString); questionElementRepository.Update(dbEntity); await unitOfWork.SaveAsync(); return(dbEntity); }