DataSource for Entity Framework for WPF/Silverlight
統合データコンテキスト
C1DataSource の概要 > 統合データコンテキスト

Entity Framework でも WCF RIA サービスでも、コンテキスト(セッション)の管理およびコンテキストの明示的な作成は、開発者が行う必要があります。さらに、場合によっては、アプリケーションのフォームごとに個別のコンテキストを作成する必要があります。あるコンテキストで取得されたオブジェクトと別のコンテキストで取得されたオブジェクトは、本質的には同じオブジェクトであっても、何も関係がありません。このため、フォームどうし(または1つのフォーム内のタブコントロールにあるタブどうしでも)がやり取りする必要がある場合は、深刻な問題が発生することがあります。これまで、これらの問題を解決する従来の方法では、データを基底のデータベースに繰り返し保存し、GUI を継続的にリフレッシュすることで、発生した変更を反映してきました。その結果、多くの繰り返しコードが必要になり、データベースサーバーに繰り返しアクセスするためにアプリケーション全体のパフォーマンスが低下していました。

DataSource for Entity Framework は、統合データコンテキストと高度なクライアントキャッシュ機能を組み合わせることで、より優れたソリューションを提供しています。アプリケーションに必要なデータコンテキストは1つだけで、これがアプリケーション内のすべてのフォームとコントロールで使用されます。高度なクライアントキャッシュ機能により、コンテキストのオブジェクトに加えられた変更がすべて管理されます。つまり、クライアント側トランザクション機能が有効になり、ビューを頻繁に保存したりリフレッシュする必要がなくなるため、アプリケーションのパフォーマンスが向上し、コードが簡略化されます。また、ローカルデータキャッシュ機能により、クライアント側のクエリーですべての LINQ 機能(フィルタ処理、ソート、グループ化など)を使用することができます。ローカルデータキャッシュ機能なしでは、これは不可能です。

メモ:DataSource for Entity Framework は、新しい DbContext(Visual Studio でのデフォルトのコンテキスト)および従来の ObjectContext の両方の Entity Framework コンテキストをサポートしています。