Entity Framework DataSource(EF DataSource)は、ビジュアルスタイルのプログラミングと "オールコード" スタイルのプラミングの両方をサポートします。
・ ポイント&クリックで RAD スタイルのアプリケーション開発を行いたい場合は、C1DataSource コントロールを使用します。
・ C1DataSource の使いやすさはそのままに、コードを GUI から分離したい場合は、ClientViewSource クラスを使用します。ClientViewSource クラスは GUI から独立しており、任意の GUI プラットフォーム(WPF、Silverlight、WinForms)と組み合わせてコードで使用できます。MVVM アプリケーションのビューモデルレイヤを含めて、GUI とは完全に独立して使用できます。また、ClientViewSource は C1DataSource が使用するオブジェクトと同じなので、使いやすさという C1DataSource の特徴は維持できます(ただし、ビジュアルデザイナなしのコードのみ)。実際に、C1DataSource は、単に ClientViewSource オブジェクトのコレクションであるだけでなく、ビジュアルデザイナによるサポートを備えています。
・ コードを最大限制御する場合は、EF DataSource オブジェクトモードの最下位(3番目)にある ClientView クラスを使用します。特に MVVM パターンを使用して(ただし、それに限らず)、ピュアコードを指向する場合は、これが推奨のレベルです。プログラミングはやはり容易です。多くは関数型プログラミングを促進する LINQ に基づいており、直感的で表現力豊かです。
ここからは、ClientView クラスを使用するプログラミングを中心に説明します。