如何打印datareader中的所有列

svo*_*von 20 c# ado.net datareader

使用c#如何打印datareader中的所有列.

Red*_*ter 29

传递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;
}
Run Code Online (Sandbox Code Playgroud)


Jus*_*ner 12

为了给答案添加一些值,我提供了一个可能的扩展方法来返回给定的列名DataReader.

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