public static IList <string> GetPrimaryKeys(Type entityType)
        {
            IList <string> result = new List <string>();

            PropertyInfo[] pis = entityType.GetProperties();

            foreach (PropertyInfo pi in pis) //从 DataBaseColumnAttribute 中读取 属性-列 映射。
            {
                DataBaseColumnAttribute item = pi.GetCustomAttribute <DataBaseColumnAttribute>();
                if (item != null && item.PrimaryKey)
                {
                    result.Add(item.Name);
                }
            }

            return(result);
        }
        /// <summary>
        /// 获取属性-列映射
        /// </summary>
        /// <param name="entityType">要映射的实体类型</param>
        /// <returns>属性-列映射表。</returns>
        public static IDictionary <string, string> MapPropertyColumnName(Type entityType)
        {
            Dictionary <string, string> mapping = new Dictionary <string, string>();

            PropertyInfo[] pis = entityType.GetProperties();

            foreach (PropertyInfo pi in pis) //从 DataBaseColumnAttribute 中读取 属性-列 映射。
            {
                DataBaseColumnAttribute item = pi.GetCustomAttribute <DataBaseColumnAttribute>();
                if (item != null)
                {
                    mapping.Add(pi.Name,
                                string.IsNullOrEmpty(item.Name) ? pi.Name : item.Name);
                }
            }
            return(mapping);
        }