2011-01-11 9 views
1

Invokeメソッドを使用して依存関係を持つオブジェクトをロードするにはどうすればよいですか?。 Invokeメソッドを使用して依存関係のあるオブジェクトをロードする

など。 ;セット;}

[データメンバー]

【のDataContract]

パブリッククラスMyDTO

{

[データメンバー】公衆INT Idは{得る:私は、DTOを有しますパブリック文字列SomeField {get; set;}

[DataMember] [インクルード] public IList < SomeEntity>の依存関係取得または設定} }

そして呼び出す方法:

[呼び出し]

公共MyDTO GetDTO()新しい

{

リターンMyDTO() { Id = 1、 SomeFields = "T est "、 依存関係=新しいリスト< SomeEntity>(){new SomeEntity()}; }

クライアント側では、MyDTOインスタンスをメインドメインコンテキストに添付できますが、依存関係は読み込まれません。 Dependenciesを別々に取得する新しいメソッドを作成する必要はありません。代わりにcreate queryメソッドを呼び出すと、IEnumerableで作業する必要がありますが、インスタンスが1つだけ必要です。それを解決する最善の方法は何ですか?ありがとう。

答えて

0

私はIEnumerableをで動作するはずですが、私はインスタンスを1つだけ必要 を呼び出す代わりに、queryメソッドを作成する場合。それを解決する最も良い方法は とは何ですか?ありがとう。 LINQ経由

あなたのコンテキストを照会し、最初のレコード(それはあなたがすることによって照会しているあなたのPKだ場合のみ、1またはnoneがあるでしょう)を求めて:

Context.Load(Context.GeEmployeeQuery().Where(a => a.EmployeeId == employeeId), 
           LoadBehavior.RefreshCurrent, 
           x => 
            { 
            Employee = x.Entities.FirstOrDefault(); 
            }, null); 
関連する問題