public List<Model.Ppt> Select(string table_Name, string Fields, string limit_Condition, string order_By, string order_Direction, int page_Size, int current_Page) { SqlParameter[] para = new SqlParameter[7]; para[0] = new SqlParameter("@TableName", table_Name); para[1] = new SqlParameter("@ReFieldsStr", Fields); para[2] = new SqlParameter("@OrderString", order_By); para[3] = new SqlParameter("@OrderDirection", order_Direction); para[4] = new SqlParameter("@WhereString", limit_Condition); para[5] = new SqlParameter("@PageSize", page_Size); para[6] = new SqlParameter("@PageIndex ", current_Page);
List<Model.Ppt> list = new List<Model.Ppt>(); Hashtable hashValue = new Hashtable(); Model.Ppt model = new Model.Ppt(); object temp=new Model.Ppt(); int fieldNum = 18; PropertyInfo[] infos = model.GetType().GetProperties(); string[] field = Fields.Split(',');
using (SqlDataReader reader = SQLHelper.ExecuteReader(conn, CommandType.StoredProcedure, "PROCE_PAGECHANGE", para)) { while (reader.Read()) { hashValue = new Hashtable(); temp = new Model.Ppt(); foreach (string fName in field) { for (int i = 0; i < fieldNum; i++) { if ("*" == fName) { if (DBNull.Value != reader[infos.Name]) { hashValue.Add(infos.Name, reader[infos.Name]); infos.SetValue(temp, hashValue[infos.Name], null); } } else { if (infos.Name == fName) { if (DBNull.Value != reader[infos.Name]) { hashValue.Add(infos.Name, reader[infos.Name]); infos.SetValue(temp, hashValue[infos.Name], null); } break; } } } } list.Add((Model.Ppt)temp); } } return list; }
