private void UpdateMultipleOptions(object source, IMultipleOptionPropertyDefinition model, IEnumerable <ConfigurationSet> configurationSets, ConfigurationIdentity configIdentity) { var optionSet = optionSetFactory.Build(model, configIdentity, configurationSets); var collectionBuilder = model.GetCollectionBuilder(); var items = model.GetPropertyValue(source) as IEnumerable; foreach (var item in items ?? Enumerable.Empty <object>()) { if (optionSet.TryGetValue(item, out var actualValue)) { collectionBuilder.Add(actualValue); } } model.SetPropertyValue(source, collectionBuilder.Collection); }