/** * @ 获取 SQLDataResult 列表 * */ protected List <SQLDataResult> GetDataResult(DbDataReader reader) { List <SQLDataResult> list = new List <SQLDataResult>(); try { if (reader == null || reader.HasRows == false) { return(list); } do { SQLDataResult result = new SQLDataResult(); int len = fields.Count(); for (int i = 0; i < len; i++) { result.Add(reader.GetName(i), reader.GetValue(i)); } list.Add(result); } while (reader.Read()); } finally { Dispose(false); } return(list); }
/** * @ 返回一个结果集合 * */ public List <SQLDataResult> ExecuteToDataResult() { List <SQLDataResult> dataList = null; try { base.ExecuteReader(); DbDataReader reader = Context.DbReader; if (reader.HasRows == false) { return(null); } reader.Read(); do { SQLDataResult result = new SQLDataResult(); int len = reader.FieldCount; for (int i = 0; i < len; i++) { result.Add(reader.GetName(i), reader.GetValue(i)); } dataList.Add(result); } while (Context.DbReader.Read()); } finally { Dispose(false); } return(dataList); }
public static SQLDataResult <DataTable> ExecuteQuery(SqlConnection conn, string cmdStr, bool isProc = false, params SqlParameter[] paras) { SQLDataResult <DataTable> res = new SQLDataResult <DataTable>(); if (conn == null) { res.DataList = null; res.IsSuccess = ExeSQLResult.NoConnection; return(res); } using (SqlCommand cmd = conn.CreateCommand()) { if (string.IsNullOrEmpty(cmdStr)) { res.DataList = null; res.IsSuccess = ExeSQLResult.NullCommandString; return(res); } cmd.CommandText = cmdStr; if (isProc) { cmd.CommandType = CommandType.StoredProcedure; } else { cmd.CommandType = CommandType.Text; } if (paras != null) { cmd.Parameters.AddRange(paras); } if (conn.State == ConnectionState.Broken || conn.State == ConnectionState.Broken) { conn.Open(); } using (SqlDataAdapter dataAdapter = new SqlDataAdapter(cmd)) { DataSet set = new DataSet(); dataAdapter.Fill(set); if (set.Tables.Count > 0) { res.DataList = new List <DataTable>(); for (int i = 0; i < set.Tables.Count; i++) { res.DataList.Add(set.Tables[i]); } res.IsSuccess = ExeSQLResult.Success; } else { res.IsSuccess = ExeSQLResult.NoResult; res.DataList = null; } return(res); } } }