コード例 #1
0
        /// <summary>
        /// 获取属性-所有Field(带排序)
        /// </summary>
        /// <param name="objEntity"></param>
        /// <returns></returns>
        public static List <EntityAttribute> GetFieldAttribute(BaseDataContract objEntity)
        {
            try
            {
                List <EntityAttribute> lstAttri       = new List <EntityAttribute>();
                PropertyInfo[]         objPropertyArr = objEntity.GetType().GetProperties();

                EntityAttribute attri = null;
                foreach (var item in objPropertyArr)
                {
                    attri = EntityTools.GetAttribute(item);
                    if (attri != null)
                    {
                        lstAttri.Add(attri);
                    }
                }
                if (lstAttri != null && lstAttri.Count > 0)
                {
                    lstAttri.Sort();
                }
                return(lstAttri);
            }
            catch
            {
                return(null);
            }
        }
コード例 #2
0
 /// <summary>
 /// 获取属性-Table
 /// </summary>
 /// <param name="objEntity"></param>
 /// <returns></returns>
 internal static EntityAttribute GetTableAttribute(BaseDataContract objEntity)
 {
     try
     {
         return(GetAttribute(objEntity.GetType()));
     }
     catch
     {
         return(null);
     }
 }
コード例 #3
0
 /// <summary>
 /// 获取属性-Field
 /// </summary>
 /// <param name="objEntity"></param>
 /// <param name="fieldName"></param>
 /// <returns></returns>
 public static EntityAttribute GetFieldAttribute(BaseDataContract objEntity, string fieldName)
 {
     try
     {
         PropertyInfo[] objPropertyArr = objEntity.GetType().GetProperties();
         return((EntityAttribute)(objPropertyArr.FirstOrDefault(t => t.Name.ToLower() == fieldName.ToLower())).GetCustomAttributes(typeof(EntityAttribute), false)[0]);
     }
     catch
     {
         return(null);
     }
 }
コード例 #4
0
 /// <summary>
 /// 获取属性-Field
 /// </summary>
 /// <param name="objEntity"></param>
 /// <param name="fieldName"></param>
 /// <returns></returns>
 internal static PropertyInfo GetFieldProperty(BaseDataContract objEntity, string fieldName)
 {
     try
     {
         PropertyInfo[] objPropertyArr = objEntity.GetType().GetProperties();
         return(objPropertyArr.FirstOrDefault(t => t.Name.ToLower() == fieldName.ToLower()));
     }
     catch
     {
         return(null);
     }
 }
コード例 #5
0
        /// <summary>
        /// 获取实体字段类型
        /// </summary>
        /// <param name="objEntity"></param>
        /// <returns></returns>
        public static EntityFieldAttribute[] GetEntityFieldAttri(BaseDataContract objEntity)
        {
            EntityFieldAttribute        fieldAttri    = null;
            List <EntityFieldAttribute> lstFieldAttri = new List <EntityFieldAttribute>();

            PropertyInfo[] propertyInfo = objEntity.GetType().GetProperties();
            foreach (PropertyInfo item in propertyInfo)
            {
                fieldAttri           = new EntityFieldAttribute();
                fieldAttri.FieldName = item.Name;
                fieldAttri.FieldType = Nullable.GetUnderlyingType(item.PropertyType) ?? item.PropertyType;
                lstFieldAttri.Add(fieldAttri);
            }
            return(lstFieldAttri.ToArray());
        }
コード例 #6
0
 /// <summary>
 /// 获取属性-Field
 /// </summary>
 /// <param name="objEntity"></param>
 /// <param name="obj"></param>
 /// <returns></returns>
 internal static PropertyInfo GetFieldProperty(BaseDataContract objEntity, EntityAttribute obj)
 {
     try
     {
         PropertyInfo[]  objPropertyArr = objEntity.GetType().GetProperties();
         EntityAttribute attri          = null;
         foreach (var item in objPropertyArr)
         {
             attri = EntityTools.GetAttribute(item);
             if (attri != null && attri.FieldName.ToLower() == obj.FieldName.ToLower())
             {
                 return(item);
             }
         }
         return(null);
     }
     catch
     {
         return(null);
     }
 }