/// <summary> /// Gets the result set as list of string arrays. /// </summary> /// <param param name="resultSet">The result set to convert to a string array list.</param> /// <returns>A list of string arrays representing the result set.</returns> public static List<String[]> ResultSetToStringArrayList(ResultSet resultSet) { List<string[]> stringArrayList = new List<string[]>(); stringArrayList.Add(GetColumnLabels(resultSet)); if (resultSet.rows != null) { foreach (Row row in resultSet.rows) { stringArrayList.Add(GetRowStringValues(row)); } } return stringArrayList; }
/// <summary> /// Gets the column labels for the result set. /// </summary> /// <param name="resultSet">The result set to get the column labels for. /// </param> /// <returns>The string array of column labels.</returns> public static String[] GetColumnLabels(ResultSet resultSet) { List<string> columnLabels = new List<string>(); foreach (ColumnType column in resultSet.columnTypes) { columnLabels.Add(column.labelName); } return columnLabels.ToArray(); }
/// <summary> /// Gets the result set as a table represenation in the form of: /// /// <pre> /// +-------+-------+-------+ /// |column1|column2|column3| /// +-------+-------+-------+ /// |value1 |value2 |value3 | /// +-------+-------+-------+ /// |value1 |value2 |value3 | /// +-------+-------+-------+ /// </pre> /// </summary> /// <param name="resultSet">The result set to display as a string</param> /// <returns>The string represenation of result set as a table.</returns> public static String ResultSetToString(ResultSet resultSet) { StringBuilder resultSetStringBuilder = new StringBuilder(); List<String[]> resultSetStringArrayList = ResultSetToStringArrayList(resultSet); List<int> maxColumnSizes = GetMaxColumnSizes(resultSetStringArrayList); string rowTemplate = CreateRowTemplate(maxColumnSizes); string rowSeparator = CreateRowSeperator(maxColumnSizes); resultSetStringBuilder.Append(rowSeparator); for (int i = 0; i < resultSetStringArrayList.Count; i++) { resultSetStringBuilder.AppendFormat(rowTemplate, (object[]) resultSetStringArrayList[i]). Append(rowSeparator); } return resultSetStringBuilder.ToString(); }