私はLinqをSql Compact EditionでSqlに使用してWPFクライアントアプリケーションを作成しています。 dbは比較的小さく(3MB)、読み取り専用です。パフォーマンスの向上Linq to Sql Compact Edition
ボトムラインは、パフォーマンスが私が望んでいたほど良くはありませんし、それを増やすためのヒントや実践的な方法を探しています。
多くの事実: スキーマには、それらの間に広範な関係がある約12のエンティティが含まれています。
アプリケーションをプロファイリングすると、クエリが非常に速く実行されていることがわかりましたが、C#エンティティを作成することは、最も時間がかかるプロセスです(最大8秒)。 私はLoadWithを使用していて、DataContextは選択肢がありませんが、メモリ内にオブジェクトグラフを作成するので、私は信じています。
必要に応じて追加情報を提供することができます。
EDIT:
- 私は、DBが読み取り専用のDataContextは、変更を追跡されないように説明したように。
- 私たちは再クエリを実行する際に静的クエリを利用しています。問題は、アプリケーションが初期化中で、多数のオブジェクトをメモリにプリフェッチしてキャッシュとして提供するときです。
ありがとうございました。
アリエル
それはかなりの労力集中的な戦略だが、我々は非常にselectクエリでそれを追求について考えました。まだそれをテストする時間がなかった – RobS