public InjectMemberInfo(PropertyInfo pInfo, InjectUsageAttribute attr) { propertyInfo = pInfo; ValueName = propertyInfo.Name; ValueType = propertyInfo.PropertyType; usageAttribute = attr; }
private void ReflectFields() { FieldInfo[] fieldInfos = TargetType.GetFields(BindingFlags.Instance | BindingFlags.Public | BindingFlags.NonPublic); if (fieldInfos != null && fieldInfos.Length > 0) { foreach (var fieldInfo in fieldInfos) { InjectUsageAttribute attr = fieldInfo.GetCustomAttribute <InjectUsageAttribute>(); if (attr != null && attr.Key != null) { InjectMemberInfo imInfo = new InjectMemberInfo(fieldInfo, attr); if (attr.OperationType == EInjectOperationType.Inject) { injectMemberInfos.Add(imInfo); } else if (attr.OperationType == EInjectOperationType.Extract) { extractMemberInfos.Add(imInfo); } else { injectMemberInfos.Add(imInfo); extractMemberInfos.Add(imInfo); } } } } }
public InjectMemberInfo(FieldInfo fInfo, InjectUsageAttribute attr) { fieldInfo = fInfo; ValueName = fieldInfo.Name; ValueType = fieldInfo.FieldType; usageAttribute = attr; }