public static List <T> Select(SQConditionBase cond, params SQParameter[] parameters) { List <T> res = new List <T>(); SQSelectQuery q = _Views[typeof(T)]; q.Condition = cond; q.Parameters = new List <SQParameter>(parameters); SQAdapter adp = DGBase.AdapterProvider(); SQSelectResult rdr = q.Execute(adp); if (rdr.Reader.Read()) { List <string> fields = new List <string>(); for (int i = 0; i < rdr.Reader.VisibleFieldCount; i++) { fields.Add(rdr.Reader.GetName(i)); } do { T item = new T(); for (int i = 0; i < rdr.Reader.VisibleFieldCount; i++) { item.PopulateProperty(fields[i], rdr.Reader.GetValue(i)); } res.Add(item); }while (rdr.Reader.Read()); } return(res); }
public DGCtx() : base(DGBase.AdapterProvider()) { }