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;
}