private static void UpdateRepeatedItemList(IList list, Type subtype, IGenericRootItem genericRootItem) { var constructedType = ConversionMethods.GetConcreteClassFromInterface(subtype); var element = constructedType as IElement; if (element == null) { return; } UpdateReferences(element, genericRootItem); list.Add(element); }
private static void UpdateInterfacePropertyValue(object instance, IPropertyValidation propertyValidationModel) { if (!propertyValidationModel.PropertyInfo.PropertyType.IsInterface) { return; } var anyClassImplementingInterface = ConversionMethods.GetConcreteClassFromInterface(propertyValidationModel.PropertyInfo); var anyClassAsElement = anyClassImplementingInterface as BaseElement; if (anyClassAsElement == null) { return; } UpdateReferences(anyClassAsElement, propertyValidationModel.GenericReferenceElement); propertyValidationModel.PropertyInfo.SetValue(instance, anyClassImplementingInterface); }