private object GetConfigPropertyValueFromInput(JObject source, ConfigurationCollectionPropertyDefinition propertyModel, ConfigurationIdentity configIdentity, IEnumerable <ConfigurationSet> requiredConfigurationSets) { var collectionBuilder = propertyModel.GetCollectionBuilder(); foreach (var item in source.GetValue(propertyModel.ConfigurationPropertyName.ToLowerCamelCase())) { var config = propertyModel.NewItemInstance(); config = UpdateObject(config, (JObject)item, propertyModel.ConfigurationProperties, configIdentity, requiredConfigurationSets); collectionBuilder.Add(config); } return(collectionBuilder.Collection); }
private object GetConfigPropertyValueFromInput(JObject source, ConfigurationCollectionPropertyDefinition propertyModel) { var collectionBuilder = propertyModel.GetCollectionBuilder(); foreach (var item in source.GetValue(propertyModel.ConfigurationPropertyName.ToLowerCamelCase())) { var config = collectionBuilder.IntializeNewItem(); config = UpdateObject(config, (JObject)item, propertyModel.ConfigurationProperties); collectionBuilder.Add(config); } return(collectionBuilder.Collection); }
private void UpdateOptions(object source, ConfigurationCollectionPropertyDefinition model) { var items = model.GetPropertyValue(source) as IEnumerable; if (items == null) { var collectionBuilder = model.GetCollectionBuilder(); model.SetPropertyValue(source, collectionBuilder.Collection); return; } foreach (var item in items) { UpdateOptions(item, model.ConfigurationProperties); } }