Esempio n. 1
0
        private static void CreateMetaDataForProperty(FModelMetaData mmd, PropertyInfo pi)
        {
            FPropertyMetaData p = new FPropertyMetaData(pi);

            p.Name = pi.Name;
            p.Type = pi.PropertyType;
            HandlePropertyAttributes(p);
            mmd.Properties.Add(p);
        }
Esempio n. 2
0
        private static void HandlePropertyAttributes(FPropertyMetaData p)
        {
            // 可能的字段名处理
            var columnAttr = p.PropertyInfo.GetCustomAttribute <ColumnAttribute>();

            if (columnAttr != null)
            {
                p.ColumnName  = columnAttr.Name;
                p.ColumnOrder = columnAttr.Order;
            }
            else
            {
                p.ColumnName = p.Name;
            }
            // 主键
            var keyAttr = p.PropertyInfo.GetCustomAttribute <KeyAttribute>();

            if (keyAttr != null)
            {
                p.IsKey = true;
            }
        }