質問

しているsqlクエリーで持ち帰り大行数を介してDataReader.それかのクエリにデータベース変換の結果セットをリストアップのデータをバインドするグリッドの一覧です。

この結果がタイムアウトによりサイズのデータセットである。

私は現在、三teir設定が、UIの実情に応じた対応が必要であると、一覧のオブジェクト事業。

できるのにベストプラクティスをご提案アプローチの実施のための怠け者を増やす目標を揚げており、このscenatrio?やはりその他の実現にはこの綺麗に?

私は現在使用しVisual Studio2005年.純2.0

編集:はどのようにページングを使用するこのインスタンス?

役に立ちましたか?

解決

LINQ to SQLう意味でのまま利用可能です。

その場合は何らかの理由ではなく、使いたい商品例きます。純2.0)を考慮する反復子を読み取るの DataReader に変換し、適切なオブジェクト:

IEnumerator<MyObject> ReadDataReader() {
  while(reader.MoveNext())
    yield return FetchObject(reader);
}

他のヒント

いち返らなければならなすべてのデータは一回しか出来ないのですか?きを考慮ページ欄に入力してください。

ページングが最良の解決策です。ご利用の場合はSQL Server2005年以上がった新機能を追加。 ROWNUMBER():

WITH MyThings AS
(
    SELECT ThingID, DateEntered,
    ROW_NUMBER() OVER (ORDER BY DateEntered) AS 'RowNumber'
    FROM dbo.Things 
) 
SELECT * 
FROM ThingDetails
WHERE RowNumber BETWEEN 50 AND 60;

があり David Haydenはとてもわかりやすく、役に立ちを示すことで、SQL.

このメソッドの減少は、データの数を返還全体の負荷ます。ではうまいりますラベルを使ンケートを実施記録に、その価値は十分あります。
標準のページング技術が必要であるから帰ってきており、データベースにし、それに対するフィルタの中段または、クライアント層(コード-裏)このメソッドの記録により管理可能なサブセット.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top