ObjectContext.Attach(IEntityWithKey) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Anexa um objeto ou um grafo de objeto ao contexto de 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 ser anexado.
Exceções
O entity
é null
.
Chave de entidade inválida.
Exemplos
Neste exemplo, dois objetos são anexados e, em seguida, 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);
}
}
Comentários
Chame Attach no ObjectContext para anexar o objeto ao contexto do objeto. Faça isso quando o objeto já existir na fonte de dados, mas atualmente não estiver anexado ao contexto. Para obter mais informações, consulte Personalizando objetos.
Attach é usado para anexar um objeto ou o objeto de nível superior em um grafo de objeto.
O objeto que está sendo anexado deve implementar IEntityWithKey para expor um EntityKey. Todas as classes de entidade geradas implementam IEntityWithKey.
Ao anexar objetos relacionados, você também deve chamar Attach
no EntityReference<TEntity> ou no EntityCollection<TEntity> para definir a relação.
Esse método chama o AttachTo método .
As seguintes considerações se aplicam ao anexar objetos:
Se o objeto que está sendo anexado tiver objetos relacionados, esses objetos também serão anexados ao contexto do objeto.
Os objetos são adicionados ao contexto do objeto em um estado inalterado.
O objeto que é passado para o 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.