22

c# を使用して、データリーダーのすべての列を印刷するにはどうすればよいですか。

4

3 に答える 3

32

このメソッドは、データリーダーが渡されると、列名の列挙可能なリストを返します。

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;
}
于 2010-04-29T15:47:46.950 に答える
14

回答に値を追加するために、指定されたの列名を返す可能性のある拡張メソッドを含めましたDataReader

public static IEnumerable<string> GetColumnNames(this IDataReader reader)
{
    for(int i=0; i<reader.FieldCount; i++)
        yield return reader.GetName(i);
}
于 2010-04-29T15:51:01.457 に答える
3
for (int j = 0; j < x.VisibleFieldCount; j++)
            Console.WriteLine(x.GetName(j));
于 2010-04-29T15:48:22.803 に答える