2011-01-11 8 views
1

Wie kann ich Objekte mit Abhängigkeiten über Invoke-Methode laden?Ria Dienstleistungen. Laden von Objekten mit Abhängigkeiten über Invoke-Methode

z. Ich habe ein DTO:

[Datacontract]

public class MyDTO

{

[Datamember] public int Id {get; set;}

[Datamember] Öffentliche Zeichenkette SomeField {get; set;}

[DataMember] [Include] öffentliche IList < SomeEntity> Abhängigkeiten {get; set} }

und rufen Methode:

[Invoke]

öffentliche MyDTO GetDTO()

{

Rückkehr neu MyDTO() { Id = 1, SomeFields = "T est ", Abhängigkeiten = neue Liste < SomeEntity>() {new SomeEntity()}; }

In diesem Fall auf Client-Seite I MyDTO Instanz Hauptdomain Kontext anhängen können, aber Abhängigkeiten werden nicht geladen. Ich möchte keine neue Methode erstellen, um Abhängigkeiten separatlly zu erhalten. Wenn Abfrage Methode statt aufrufen, sollte ich mit IEnumerable arbeiten, aber ich brauche nur eine Instanz. Was ist der beste Weg, um das zu lösen? Vielen Dank.

Antwort

0

Wenn Abfragemethode erstellen, anstatt rufe ich mit IEnumerable arbeiten sollte, aber ich nur eine Instanz benötigen. Was ist die beste Möglichkeit, das zu lösen? Vielen Dank.

Via LINQ, wenn Sie Ihren Kontext und fragt nach dem ersten Datensatz abfragen (es wird nur eine oder keine, wenn es Ihre PK ist durch Sie Abfrage):

Context.Load(Context.GeEmployeeQuery().Where(a => a.EmployeeId == employeeId), 
           LoadBehavior.RefreshCurrent, 
           x => 
            { 
            Employee = x.Entities.FirstOrDefault(); 
            }, null);