C# – Can you get the column names from a SqlDataReader

ado.netcsqldatareader

After connecting to the database, can I get the name of all the columns that were returned in my SqlDataReader?

Best Answer

var reader = cmd.ExecuteReader();

var columns = new List<string>();

for(int i=0;i<reader.FieldCount;i++)
{
   columns.Add(reader.GetName(i));
}

or

var columns = Enumerable.Range(0, reader.FieldCount).Select(reader.GetName).ToList();