2010-04-29 16 views

Respuesta

26

Este método devolverá una lista enumerable de nombres de columna cuando se pasa un datareader:

static List<string> GetDataReaderColumnNames(IDataReader rdr) 
{ 
    var columnNames = new List<string>(); 
    for (int i = 0; i < rdr.FieldCount; i++) 
     columnNames.Add(rdr.GetName(i)); 
    return columnNames; 
} 
3
for (int j = 0; j < x.VisibleFieldCount; j++) 
      Console.WriteLine(x.GetName(j)); 
11

para añadir algo de valor a las respuestas, incluido un posible método de extensión para devolver los nombres de columna para una dado DataReader.

public static IEnumerable<string> GetColumnNames(this IDataReader reader) 
{ 
    for(int i=0; i<reader.FieldCount; i++) 
     yield return reader.GetName(i); 
} 
+0

Me encanta métodos de extensión, me siento como la inyección en la exposición y que el comportamiento ..:) –

Cuestiones relacionadas