ObjectContext.Attach(IEntityWithKey) Método

Definição

Anexa um objeto ou grafo de objetos ao contexto do objeto quando o objeto tem uma chave de entidade.

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)

Parâmetros

entity
IEntityWithKey

O objeto a prender.

Exceções

O entity é null.

Chave de entidade inválida.

Exemplos

Neste exemplo, dois objetos são ligados e depois a relação é definida.

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

Observações

Chama Attach o ObjectContext para anexar o objeto ao contexto do objeto. Faça isto quando o objeto já existe na fonte de dados mas não está atualmente ligado ao contexto. Para mais informações, consulte Personalização de Objetos.

Attach é usado para anexar um objeto ou o objeto de topo num grafo de objetos.

O objeto anexado deve implementar IEntityWithKey para expor um EntityKey. Todas as classes de entidade geradas implementam IEntityWithKey.

Quando anexa objetos relacionados, deve também invocar Attach o EntityReference<TEntity> ou o EntityCollection<TEntity> para definir a relação.

Este método chama o AttachTo método.

As seguintes considerações aplicam-se ao anexar objetos:

  • Se o objeto a ser anexado tiver objetos relacionados, esses objetos também serão ligados ao contexto do objeto.

  • Os objetos são adicionados ao contexto do objeto num estado inalterado.

  • O objeto que é passado ao Attach método deve ter um valor válido EntityKey . Se o objeto não tiver um valor válido EntityKey , use o AttachTo método para especificar o nome do conjunto de entidades.

Aplica-se a

Ver também