{
try
{
return Get(formatStr,objs);
}
catch
{
MakeSureExistTableAndColumns();
}
return Get(formatStr, objs);
}
public static List<T> Get(string formatStr, params object[] objs)
{
StringBuilder sql = new StringBuilder(SQL_SELECT);
List<String> names = new List<string>();
List<SqlParameter> parms = new List<SqlParameter>();
int i = 0;
foreach (object obj in objs)
{
string name = "@Parameter" + i.ToString("00");
names.Add(name);
parms.Add(O.CreateParm(name, obj));
i++;
}
if (!String.IsNullOrEmpty(formatStr) && formatStr.ToLower().IndexOf("where ")==-1)
{
sql.Append(" WHERE ");
}
sql.AppendFormat(formatStr, names.ToArray());
return Get(sql.ToString(), parms.ToArray());
}
public static List<T> Get(string sqlselect, params SqlParameter[] parms)
{
List<T> list = new List<T>();
using (SqlDataReader reader = SqlHelper.ExecuteReader(SqlHelper.ConnectionString, CommandType.Text, sqlselect, parms))
{
while (reader.Read())
{
T obj = (T)Assembly.Load(CurrentType.FullName.Substring(0, CurrentType.FullName.Length - CurrentType.Name.Length - 1)).CreateInstance(CurrentType.FullName);
int i = 0;
foreach (PropertyInfo info in Attributes)
{
info.SetValue(obj, GetValueByType(info, reader[i]), null);
i++;
}
list.Add(obj);
}
}
return list;
}

浙公网安备 33010602011771号