public PropertyDefinition Build(PropertyInfo property) { PropertyDefinition propDef = new DefaultPropertyDefinition( GetTypeDefinition(property), GetName(property), GetGetter(property), GetSetter(property), GetDeclaringTypeName(property), GetAccessibility(property), MemberType.Property); IEnumerable<PropertyDefinitionAttribute> propertyDefinitionAttributes = property.GetCustomAttributes(false).OfType<PropertyDefinitionAttribute>(); foreach (PropertyDefinitionAttribute attribute in propertyDefinitionAttributes) { attribute.InnerDefinition = propDef; propDef = attribute; } return propDef; }
public PropertyDefinition Build(FieldInfo field) { PropertyDefinition propDef = new DefaultPropertyDefinition( GetTypeDefinition(field), GetName(field), GetGetter(field), GetSetter(field), GetDeclaringTypeName(field), GetAccessibility(field), MemberType.Field); IEnumerable<PropertyDefinitionAttribute> propertyDefinitionAttributes = field.GetSourceMember().GetCustomAttributes(false).OfType<PropertyDefinitionAttribute>(); foreach (PropertyDefinitionAttribute attribute in propertyDefinitionAttributes) { attribute.InnerDefinition = propDef; propDef = attribute; } return propDef; }