/// <summary> /// Execute a query and return the results. /// </summary> /// <param name="where">A WhereDelegate that recieves a HouseColumns /// and returns a IQueryFilter which is the result of any comparisons /// between HouseColumns and other values /// </param> /// <param name="orderBy"> /// Specifies what column and direction to order the results by /// </param> /// <param name="database"></param> public static HouseCollection Where(WhereDelegate <HouseColumns> where, OrderBy <HouseColumns> orderBy = null, Database database = null) { database = database ?? Db.For <House>(); var results = new HouseCollection(database, database.GetQuery <HouseColumns, House>(where, orderBy), true); return(results); }
/// <summary> /// Return every record in the House table. /// </summary> /// <param name="database"> /// The database to load from or null /// </param> public static HouseCollection LoadAll(Database database = null) { SqlStringBuilder sql = new SqlStringBuilder(); sql.Select <House>(); Database db = database ?? Db.For <House>(); var results = new HouseCollection(sql.GetDataTable(db)); results.Database = db; return(results); }
private static House OneOrThrow(HouseCollection c) { if (c.Count == 1) { return(c[0]); } else if (c.Count > 1) { throw new MultipleEntriesFoundException(); } return(null); }
/// <summary> /// This method is intended to respond to client side Qi queries. /// Use of this method from .Net should be avoided in favor of /// one of the methods that take a delegate of type /// WhereDelegate<HouseColumns>. /// </summary> /// <param name="where"></param> /// <param name="database"></param> public static HouseCollection Where(QiQuery where, Database database = null) { var results = new HouseCollection(database, Select <HouseColumns> .From <House>().Where(where, database)); return(results); }