/// <summary> /// 获取指定成员的 <see cref="ColumnAttribute"/> /// </summary> /// <param name="member">成员</param> /// <param name="objType">成员所在类型</param> /// <returns></returns> public virtual ColumnAttribute GetColumnAttribute(MemberInfo member, Type objType) { Type dataType = TypeUtils.GetDataType(member); if (dataType == null) { return(null); } ColumnAttribute column = null; Type type = objType != null ? objType : (member.ReflectedType != null ? member.ReflectedType : member.DeclaringType); if (type != null && !TypeUtils.IsAnonymousType(type) && !TypeUtils.IsPrimitiveType(type)) { TypeRuntimeInfo typeRuntime = TypeRuntimeInfoCache.GetRuntimeInfo(type); var invoker = typeRuntime.GetInvoker(member.Name); if (invoker != null) { column = invoker.Column; } } return(column); }