/// <summary> /// Includes new localized string to answer choice of answer set or updates existed. /// </summary> /// <param name="answerSet"></param> /// <param name="answerChoiceId"></param> /// <param name="answerChoiceString"></param> public static bool AddOrUpdateLocalizedAnswerString(this SelectionAnswerSet answerSet, Guid answerChoiceId, SelectionAnswerChoiceString answerChoiceString) { if (answerChoiceString == null) { throw new ArgumentNullException("answerChoiceString"); } var answerChoiceEntity = answerSet.SelectionAnswerChoices.FirstOrDefault(a => a.Id == answerChoiceId); if (answerChoiceEntity == null) { return(false); } answerChoiceEntity.AddOrUpdateLocalizedString(answerChoiceString); return(true); }
/// <summary> /// Updates fields of answer choice in destination with values from source. /// </summary> /// <param name="answerChoice"></param> /// <param name="localizedString"></param> public static void AddOrUpdateLocalizedString(this SelectionAnswerChoice answerChoice, SelectionAnswerChoiceString localizedString) { var localizedStringEntity = answerChoice.LocalizedStrings.FirstOrDefault( s => s.Language.Equals(localizedString.Language)); if (localizedStringEntity == null) { answerChoice.LocalizedStrings.Add(localizedString); } else { localizedStringEntity.UpdateWith(localizedString); } }