public T Get<T>(int id) { Type type = typeof(T); string columnStrings = string.Join(",", type.GetProperties().Select(p=>string.Format("[{0}]"))); string sql = string.Format("select {0} from [{1}] where id={2}", columnStrings,type.Name,id); return default(T); }
完整例子
public T Get<T>(int id) { Type type = typeof(T); string columnStrings = string.Join(",", type.GetProperties().Select(p=>string.Format("[{0}]"))); string sql = string.Format("select {0} from [{1}] where id={2}", columnStrings,type.Name,id); object t = Activator.CreateInstance(type); using (SqlConnection conn = new SqlConnection("链接字符串")) { SqlCommand com = new SqlCommand(sql,conn); conn.Open(); SqlDataReader reader = com.ExecuteReader(); if (reader.Read()) { foreach (var item in type.GetProperties()) { item.SetValue(t,reader[item.Name]); } } } return (T)t; }