Sdílet prostřednictvím


ObjectContext.Attach(IEntityWithKey) Metoda

Definice

Připojí graf objektu nebo objektu ke kontextu objektu, pokud má objekt klíč entity.

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)

Parametry

entity
IEntityWithKey

Objekt, který se má připojit.

Výjimky

Hodnota entity je null.

Neplatný klíč entity.

Příklady

V tomto příkladu jsou připojeny dva objekty a pak je definována relace.

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);
    }
}

Poznámky

Voláním Attach na objekt ObjectContext připojte objekt ke kontextu objektu. Tento postup proveďte, pokud objekt již existuje ve zdroji dat, ale v současné době není připojen ke kontextu. Další informace najdete v tématu Přizpůsobení objektů.

Attach slouží k připojení objektu nebo objektu nejvyšší úrovně v grafu objektů.

Připojený objekt musí být implementován IEntityWithKey , aby se zpřístupnil EntityKeyobjekt . Všechny vygenerované třídy entit implementují IEntityWithKey.

Když připojíte související objekty, musíte také volat Attach na EntityReference<TEntity> nebo EntityCollection<TEntity> definovat relaci.

Tato metoda volá metodu AttachTo .

Při připojování objektů platí následující aspekty:

  • Pokud má připojený objekt související objekty, budou tyto objekty také připojeny ke kontextu objektu.

  • Objekty jsou přidány do kontextu objektu v nezměněném stavu.

  • Objekt, který je předán Attach metodě musí mít platnou EntityKey hodnotu. Pokud objekt nemá platnou EntityKey hodnotu, použijte metodu AttachTo k zadání názvu sady entit.

Platí pro

Viz také