エンティティフレームワークのいくつかの簡単な質問

私はEntity Frameworkの新機能で、いくつかのことを正しく実行する方法を把握したいと思っています。私は2つのテーブルがあります:

  1. PersonId、名前、住所、電話番号、ニップ、電子メールで定義された人
  2. ClientId、Comment、Special Information、Product、PersonIDで定義されたクライアント

クライアントはPersonIDによってPersonと接続されています。今度はListViewにClientName(PERSON - Person.NameでJOIN)とClient.Commentだけを表示します。

その後、ユーザーはそのクライアントをダブルクリックすることができ、これにより、変更可能なすべての個人情報を含む編集ウィンドウが表示されます。

どのようにこれを行う必要がありますか?私は次のいずれかを作成することを考えました:

view_を作成すると4列しか表示されません(ClientID、PersonID、Person.Name、Client.Commentの4つ)

IQueryable klientQuery1 = from d in  crmEntities.view_KlienciList select d;`

var klientQuery1 = context.view_KlienciList.Select(d => new { Nazwa = d.Nazwa
                                                                      });

ほんの一部の列で選択を行う

IQueryable klientQuery = from d in crmEntities.Kliencis.Include("Podmioty")
                                  select d (......)

だからこれはいいです、なぜ私はこのように行くべきですか?ユーザが再びユーザをダブルクリックすると、その選択された人物のClient、Personからすべてのカラムをロードする必要があることを考慮してください。

2
最初のものはうまくいくのですか?もしそうであれば、私はそれがどのように機能するか、学習目的のためにもっと知りたいと思います。
追加された 著者 ashutosh raina,

1 答え

2つ目はレイジーローディング機能を無効にしますが、特定の状況では独自のメリットがあります。

1
追加された
私が本当に探していたものではありません:-)私はそれを受け入れるためにあなたの答えを広げることができますか?
追加された 著者 MadBoy,