public virtual IParameter ReadParameterAttribute(MemberInfo memberInfo) { P parameter = Activator.CreateInstance<P>(); ParameterAttribute statementParameterAttribute = (ParameterAttribute)Attribute.GetCustomAttribute(memberInfo, typeof(ParameterAttribute), true); PA sqlServerParameterAttribute = (PA)Attribute.GetCustomAttribute(memberInfo, typeof(PA), true); if (statementParameterAttribute == null) { if (sqlServerParameterAttribute != null) { throw AttributeException.ColumnAttributeNotFoundException(memberInfo, typeof(PA)); } else { return null; } } SetParameterValue(parameter, memberInfo, statementParameterAttribute, sqlServerParameterAttribute); return parameter; }
public virtual IColumn ReadColumnAttribute(MemberInfo memberInfo) { C column = Activator.CreateInstance<C>(); ColumnAttribute columnAttribute = (ColumnAttribute)Attribute.GetCustomAttribute(memberInfo, typeof(ColumnAttribute), true); CA sqlColumnAttribute = (CA)Attribute.GetCustomAttribute( memberInfo, typeof(CA), true); if (columnAttribute == null) { if (sqlColumnAttribute != null) { throw AttributeException.ColumnAttributeNotFoundException(memberInfo, typeof(CA)); } else { return null; } } SetColumnValue(column, memberInfo, columnAttribute, sqlColumnAttribute); return column; }