protected List <T> Select( string sql, Dictionary <string, object> fields, DataParserDelegator parser = null, QueryOper oper = QueryOper.EQ, QueryPredicate predicate = QueryPredicate.AND) { sql = string.Format("{0} {1}", sql, QueryBuilder.Where(fields, oper, predicate)); return(ExecQuery <T>(sql, fields, parser)); }
protected List <U> ExecQuery <U>(string query, Dictionary <string, object> fields, DataParserDelegator parser) { List <U> result = new List <U>(); parser = parser ?? dataParser; try { using (var cmd = connection.CreateCommand()) { cmd.CommandText = query; foreach (var field in fields) { cmd.Parameters.AddWithValue(field.Key, field.Value ?? DBNull.Value); } using (var reader = cmd.ExecuteReader()) { while (reader.Read()) { result.Add((U)parser(reader)); } return(result); } } } catch (Exception e) { throw new ConsoleMsgException(e); } }
public BaseHandler(string _tableName, MySqlConnection _connection, DataParserDelegator _dataParser = null) { TableName = _tableName; connection = _connection; dataParser = _dataParser ?? ParseData; }