public virtual DataEvent SelectByID(long id) { //using(SQLiteCommand cmd = this.file.CreateCommand()) { string cmdText = string.Format("select * from {0} where id = {1}", Name, id); //cmd.CommandText = sel; DataEvent ev = CreateDataEvent(); ev.ID = id; using (DataCommandBase dtc = new EventDataCommand(ev, cmdText)) { _file.AddCommand(dtc); dtc.Wait(); } foreach (DataTableBase linkedTable in LinkedTables) { long[] linkids = linkedTable.SelectIDsByIndexColumn(id); if (linkids != null) { foreach (long linkid in linkids) { ev.LinkedDataEvents(linkedTable).Add(linkedTable.SelectByID(linkid)); } } } return(ev); }
public DataEvent SelectByBossID(long id) { string cmdText = string.Format("select * from {0} where bossid = {1}", Name, id); DataEvent ev = CreateDataEvent(); using (DataCommandBase dtc = new LongDataCommand(string.Format("select id from {0} where bossid = {1}", Name, id))) { _file.AddCommand(dtc); dtc.Wait(); ev.ID = (long)dtc.Result; } using (DataCommandBase dtc = new EventDataCommand(ev, cmdText)) { _file.AddCommand(dtc); dtc.Wait(); } foreach (DataTableBase linkedTable in LinkedTables) { long[] linkids = linkedTable.SelectIDsByIndexColumn(id); if (linkids != null) { foreach (long linkid in linkids) { ev.LinkedDataEvents(linkedTable).Add(linkedTable.SelectByID(linkid)); } } } return(ev); }