0

私はこのクエリを持っているとしましょう:

var results = from row in db.Table select row;

どうすればこれにアクセスできますか:

string name = results[0]["columnName"];
4

4 に答える 4

2

特にゼロ番目の要素が必要な場合は、results.First()を使用できます。

于 2009-10-12T13:23:14.727 に答える
2

特定のインデックスが本当に必要な場合は、 First()でSkip()メソッドを使用できます。

var rowOffset = 0;
var results = (from row in db.Table 
               select row).Skip(rowOffset).First()["columnName"];

ただし、 Where句を使用している場合を除き、インデクサーを使用することをお勧めします。LINQステートメントがオブジェクトイテレータを使用している間、インデクサはほとんど直接参照です。

また、LINQを使用してはるかに高度な処理を実行できることも忘れないでください。

var rowOffset = 0;
var pageLength = 10;
var results = (from row in db.Table 
               let colValue = row["columnname"]
               where colValue != null
               select colValue.ToString()
               ).Skip(rowOffset)
               .Take(pageLength)
               .ToArray();
var commaString = string.Join(", ", results);
于 2009-10-12T13:34:35.733 に答える
1

results行のIEnumerableリストです。したがって、簡単なforeachで取得できます。

foreach(var row in results)
{
   string name = row["columnName"];
}
于 2009-10-12T13:22:22.573 に答える
1

(db.Tableの行から行を選択)First()。columnName

于 2009-10-12T13:22:39.390 に答える