/// <summary> /// Launch a select request and feed a list of records fetched using the request /// </summary> /// <param name="sql">A select request to launch</param> /// <param name="feedRecordFunction">Functions called to feed a TnX object</param> /// <returns>A list of records fetched using the select request, null if an error has occurred</returns> public List <TnX> SelectRequest <TnX>(string sql, FeedRecordDelegate feedRecordFunction) { if (!string.IsNullOrEmpty(sql)) { sql = TryToFixTrueFalseTesting(sql); CLog.DEBUG($"{MethodBase.GetCurrentMethod().Module.Name}.{MethodBase.GetCurrentMethod().DeclaringType.Name}.{MethodBase.GetCurrentMethod().Name}", $"SQL: {sql}"); return(SelectRequest <TnX>(new OdbcCommand(sql), feedRecordFunction)); } return(null); }
/// <summary> /// Launch a select request and feed a list of records fetched using the request /// </summary> /// <param name="command">A complete <see cref="OdbcCommand"/> detailing a select request to launch</param> /// <param name="feedRecordFunction">Functions called to feed a TnX object</param> /// <returns>A list of records fetched using the select request, null if an error has occurred</returns> public List <TnX> SelectRequest <TnX>(OdbcCommand command, FeedRecordDelegate feedRecordFunction) { List <TnX> l = new List <TnX>(); OdbcDataReader reader = null; if (SelectRequest(command, ref reader)) { while (reader.Read()) { TnX record = (TnX)feedRecordFunction(reader); if (null != record) { l.Add(record); } } return(l); } return(null); }