示例#1
0
        /// <summary>
        /// 根据Type获取DataTable
        /// </summary>
        /// <param name="type"></param>
        /// <returns></returns>
        public static DataTable SelectData(Type type)
        {
            if (mySqlclient == null)
            {
                mySqlclient = MySqlClient.GetMySqlClient();
            }
            DataAttr      dataAttr = (DataAttr)type.GetCustomAttribute(typeof(DataAttr), false);
            StringBuilder sb       = new StringBuilder();

            sb.Append("SELECT ");
            PropertyInfo[] propertyInfos = type.GetProperties();
            foreach (PropertyInfo info in propertyInfos)
            {
                DataAttr infoAttr = (DataAttr)info.GetCustomAttribute(typeof(DataAttr), false);
                if (infoAttr == null)
                {
                    continue;
                }
                sb.Append(info.Name + ",");
            }
            sb.Remove(sb.Length - 1, 1);//移除 多余的 ","
            sb.Append(" FROM " + dataAttr.TableName + " WHERE CompanyId= ");
            sb.Append(SystemConst.companyId);
            DataSet ds = mySqlclient.GetDataSet(sb.ToString(), CommandType.Text);

            return(ds.Tables[0]);
        }