Condividi tramite


ObjectContext.Attach(IEntityWithKey) Metodo

Definizione

Connette un oggetto o un oggetto grafico al contesto dell'oggetto quando l'oggetto contiene una chiave di entità.

public:
 void Attach(System::Data::Objects::DataClasses::IEntityWithKey ^ entity);
public void Attach (System.Data.Objects.DataClasses.IEntityWithKey entity);
member this.Attach : System.Data.Objects.DataClasses.IEntityWithKey -> unit
Public Sub Attach (entity As IEntityWithKey)

Parametri

entity
IEntityWithKey

Oggetto da connettere.

Eccezioni

L'elemento entity è null.

Chiave di entità non valida.

Esempio

In questo esempio vengono connessi due oggetti, quindi viene definita la relazione.

private static void AttachRelatedObjects(
    ObjectContext currentContext,
    SalesOrderHeader detachedOrder,
    List<SalesOrderDetail> detachedItems)
{
    // Attach the root detachedOrder object to the supplied context.
    currentContext.Attach(detachedOrder);

    // Attach each detachedItem to the context, and define each relationship
    // by attaching the attached SalesOrderDetail object to the EntityCollection on
    // the SalesOrderDetail navigation property of the now attached detachedOrder.
    foreach (SalesOrderDetail item in detachedItems)
    {
        currentContext.Attach(item);
        detachedOrder.SalesOrderDetails.Attach(item);
    }
}

Commenti

Chiamare Attach su ObjectContext per connettere l'oggetto al contesto dell'oggetto. Eseguire questa operazione quando l'oggetto è già presente nell'origine dati ma non è attualmente connesso al contesto. Per altre informazioni, vedere Personalizzazione degli oggetti.

Attach viene usato per collegare un oggetto o l'oggetto di primo livello in un grafico a oggetti.

L'oggetto da connettere deve implementare IEntityWithKey per esporre un oggetto EntityKey. Tutte le classi di entità generate implementano IEntityWithKey.

Quando si allegano oggetti correlati, è necessario chiamare Attach anche l'oggetto EntityCollection<TEntity>EntityReference<TEntity> o per definire la relazione.

Questo metodo chiama il metodo AttachTo.

Le considerazioni seguenti riguardano la connessione di oggetti:

  • Se l'oggetto che viene connesso contiene oggetti correlati, anche tali oggetti vengono connessi al contesto dell'oggetto.

  • Gli oggetti vengono aggiunti al contesto dell'oggetto nello stato Unchanged.

  • L'oggetto passato al metodo Attach deve avere un valore EntityKey valido. Se l'oggetto non ha un valore EntityKey valido, utilizzare il metodo AttachTo per specificare il nome del set di entità.

Si applica a

Vedi anche