PageTypeBuilder.Activation.TypedPageActivator.CreateAndPopulateNestedPropertyGroupInstances C# (CSharp) Method

CreateAndPopulateNestedPropertyGroupInstances() private method

private CreateAndPopulateNestedPropertyGroupInstances ( TypedPageData typedPage, object classInstance, IEnumerable properties, string hierarchy ) : void
typedPage TypedPageData
classInstance object
properties IEnumerable
hierarchy string
return void
        internal void CreateAndPopulateNestedPropertyGroupInstances(TypedPageData typedPage, object classInstance,
            IEnumerable<PropertyInfo> properties, string hierarchy)
        {
            foreach (PropertyInfo property in properties.Where(current => current.PropertyType.BaseType == typeof(PageTypePropertyGroup)))
            {
                PageTypePropertyGroup propertyGroup = CreatePropertyGroupInstance(property.PropertyType);
                string propertyName = PageTypePropertyGroupHierarchy.ResolvePropertyName(hierarchy, property.Name);

                propertyGroup.PopuplateInstance(typedPage, propertyName);
                property.SetValue(classInstance, propertyGroup, null);
            }
        }
    }