1

私は多くのサイトを調べましたが、linqを使用してデータテーブルの最初の数行をクエリする方法を理解できません。

また、これに関して、データがExcelファイルからのものである場合、列の参照は同じでしょうか?たとえば、の列Fは、データテーブルまたは番号付き参照で同じですか?

4

1 に答える 1

5
DataTable yourDataTable = new DataTable();
var result = yourDataTable.AsEnumerable()
    .Take(2) // Select first two rows
    .Select(r =>
        new
        {
            Field1 = r.Field<int>("col1"), // Select your columns
            Field2 = r.Field<string>("col2")
            // your rest of the columns
        }
    );

2行目のみを選択する場合は、次のようにします。

var result = yourDataTable.AsEnumerable()
    .Skip(1) // skip first row
    .Take(1) // Select second row
    .Select(r =>
        new
        {
            Field1 = r.Field<int>("col1"), // Select your columns
            Field2 = r.Field<string>("col2")
            // your rest of the columns
        }
    );

編集:

Select特定の列ではなく、すべての列を選択するには、ステートメントからを削除するだけです。このようなもの:

var result = yourDataTable.AsEnumerable()
    .Skip(1)  // skip first row
    .Take(1); // Select second row
于 2012-11-13T11:40:42.773 に答える