IDataReader - GetColumnNames
Gets the column names in this collection.
public static void Main() { string sql = "SELECT 1 AS IntColumn, 'FizzBuzz' AS StringColumn"; using (var conn = new SqlConnection(FiddleHelper.GetConnectionStringSqlServer())) { conn.Open(); using (DbCommand command = conn.CreateCommand()) { command.CommandText = sql; using (IDataReader reader = command.ExecuteReader()) { reader.Read(); //C# Extension Method: IDataReader - GetColumnNames List<string> result = reader.GetColumnNames().ToList(); foreach(var colName in result) { Console.WriteLine(colName); } } } } }
View Source
using System.Collections.Generic; using System.Data; using System.Linq; public static partial class Extensions { /// <summary> /// Gets the column names in this collection. /// </summary> /// <param name="this">The @this to act on.</param> /// <returns>An enumerator that allows foreach to be used to get the column names in this collection.</returns> public static IEnumerable<string> GetColumnNames(this IDataRecord @this) { return Enumerable.Range(0, @this.FieldCount) .Select(@this.GetName) .ToList(); } }