Freigeben über


Gewusst wie: Anfügen verbundener Objekte (Entity Framework)

In diesem Thema wird anhand von Beispielen erläutert, wie verbundene Objekte einem Objektkontext angefügt werden können. Weitere Informationen finden Sie unter Anfügen und Trennen von Objekten (Entity Framework). Das Beispiel in diesem Thema beruht auf dem AdventureWorks Sales-Modell. Zum Ausführen des Codes in diesem Beispiel muss dem Projekt bereits das AdventureWorks Sales-Modell hinzugefügt und das Projekt für die Verwendung von Entity Framework konfiguriert worden sein. Verwenden Sie dazu die Verfahren aus Gewusst wie: Manuelles Konfigurieren eines Entity Framework-Projekts und Gewusst wie: Manuelles Definieren der Modell- und Zuordnungsdateien (Entity Framework).

Beispiel

In diesem Beispiel wird eine Auflistung getrennter SalesOrderDetail-Objekte einem getrennten SalesOrderHeader-Objekt hinzugefügt. Anschließend wird dieses Objektdiagramm dem Objektkontext angefügt.

Private Shared Sub AttachObjectGraph(ByVal currentContext As ObjectContext, ByVal detachedOrder As SalesOrderHeader, ByVal detachedItems As List(Of SalesOrderDetail))
    ' Define the relationships by adding each SalesOrderDetail 
    ' object in the detachedItems List<SalesOrderDetail> collection to the 
    ' EntityCollection on the SalesOrderDetail navigation property of detachedOrder. 
    For Each item As SalesOrderDetail In detachedItems
        detachedOrder.SalesOrderDetails.Add(item)
    Next

    ' Attach the object graph to the supplied context. 
    currentContext.Attach(detachedOrder)
End Sub
private static void AttachObjectGraph(
    ObjectContext currentContext,
    SalesOrderHeader detachedOrder,
    List<SalesOrderDetail> detachedItems)
{
    // Define the relationships by adding each SalesOrderDetail 
    // object in the detachedItems List<SalesOrderDetail> collection to the 
    // EntityCollection on the SalesOrderDetail navigation property of detachedOrder.
    foreach (SalesOrderDetail item in detachedItems)
    {
        detachedOrder.SalesOrderDetails.Add(item);
    }

    // Attach the object graph to the supplied context.
    currentContext.Attach(detachedOrder);
}

Siehe auch

Konzepte

Serialisieren von Objekten (Entity Framework)
Erstellen von N-Tier-Anwendungen (Entity Framework)