ObjectContext Classe

Definição

Fornece funcionalidades para consultar e trabalhar com dados de entidades como objetos.

public ref class ObjectContext : IDisposable
public class ObjectContext : IDisposable
type ObjectContext = class
    interface IDisposable
Public Class ObjectContext
Implements IDisposable
Herança
ObjectContext
Implementações

Exemplos

Este exemplo mostra-lhe como construir um ObjectContext.

// Create the ObjectContext.
ObjectContext context =
    new ObjectContext("name=AdventureWorksEntities");

// Set the DefaultContainerName for the ObjectContext.
// When DefaultContainerName is set, the Entity Framework only
// searches for the type in the specified container.
// Note that if a type is defined only once in the metadata workspace
// you do not have to set the DefaultContainerName.
context.DefaultContainerName = "AdventureWorksEntities";

ObjectSet<Product> query = context.CreateObjectSet<Product>();

// Iterate through the collection of Products.
foreach (Product result in query)
    Console.WriteLine("Product Name: {0}", result.Name);

Observações

Note

A ObjectContext classe não é thread safe. A integridade dos objetos de dados em um ObjectContext não pode ser garantida em cenários multithread.

A ObjectContext classe é a classe principal para interagir com dados enquanto objetos que são instâncias de tipos de entidade definidos num modelo conceptual. Uma instância da ObjectContext classe encapsula o seguinte:

Quando a camada de objeto que representa um modelo conceptual é gerada pelas ferramentas do Entity Data Model, a classe que representa o EntityContainer para o modelo é derivada do ObjectContext.

Construtores

Name Description
ObjectContext(EntityConnection, String)

Inicializa uma nova instância da ObjectContext classe com um dado nome de contentor de ligação e entidade.

ObjectContext(EntityConnection)

Inicializa uma nova instância da ObjectContext classe com a ligação dada. Durante a construção, o espaço de trabalho de metadados é extraído do EntityConnection objeto.

ObjectContext(String, String)

Inicializa uma nova instância da classe ObjectContext com um dado cadeia de ligação e nome de contentor de entidade.

ObjectContext(String)

Inicializa uma nova instância da classe ObjectContext com a cadeia de ligação dada e o nome predefinido do contentor da entidade.

Propriedades

Name Description
CommandTimeout

Obtém ou define o valor de timeout, em segundos, para todas as operações de contexto do objeto. Um null valor indica que o valor padrão do fornecedor subjacente será utilizado.

Connection

Obtém a ligação usada pelo contexto do objeto.

ContextOptions

Obtém a ObjectContextOptions instância que contém opções que afetam o comportamento do ObjectContext.

DefaultContainerName

Obtém ou define o nome padrão do contentor.

MetadataWorkspace

Obtém o espaço de trabalho de metadados usado pelo contexto do objeto.

ObjectStateManager

Obtém o gestor de estado do objeto usado pelo contexto do objeto para acompanhar as alterações do objeto.

QueryProvider

Recebe o fornecedor de consultas LINQ associado a este contexto de objeto.

Métodos

Name Description
AcceptAllChanges()

Aceita todas as alterações feitas aos objetos no contexto do objeto.

AddObject(String, Object)

Adiciona um objeto ao contexto do objeto.

ApplyCurrentValues<TEntity>(String, TEntity)

Copia os valores escalares do objeto fornecido para o objeto no ObjectContext que tem a mesma chave.

ApplyOriginalValues<TEntity>(String, TEntity)

Copia os valores escalares do objeto fornecido para o conjunto de valores originais do objeto no ObjectContext que tem a mesma chave.

ApplyPropertyChanges(String, Object)
Obsoleto.

Aplica alterações de propriedade de um objeto destacado para um objeto já ligado ao contexto do objeto.

Attach(IEntityWithKey)

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

AttachTo(String, Object)

Anexa um objeto ou grafo de objetos ao contexto do objeto num conjunto de entidades específico.

CreateDatabase()

Cria a base de dados utilizando a ligação da fonte de dados atual e os metadados no StoreItemCollectionarquivo .

CreateDatabaseScript()

Gera um script de linguagem de definição de dados (DDL) que cria objetos de esquema (tabelas, chaves primárias, chaves estrangeiras) para os metadados no StoreItemCollection. Carrega StoreItemCollection metadados a partir de ficheiros da linguagem de definição de esquema de armazenamento (SSDL).

CreateEntityKey(String, Object)

Cria a chave de entidade para um objeto específico, ou devolve a chave de entidade se esta já existir.

CreateObject<T>()

Cria e devolve uma instância do tipo solicitado .

CreateObjectSet<TEntity>()

Cria uma nova ObjectSet<TEntity> instância que é usada para consultar, adicionar, modificar e eliminar objetos do tipo de entidade especificado.

CreateObjectSet<TEntity>(String)

Cria uma nova ObjectSet<TEntity> instância que é usada para consultar, adicionar, modificar e eliminar objetos do tipo especificado e com o nome do conjunto de entidades especificado.

CreateProxyTypes(IEnumerable<Type>)

Gera um tipo equivalente que pode ser usado com o Entity Framework para cada tipo na enumeração fornecida.

CreateQuery<T>(String, ObjectParameter[])

Cria um ObjectQuery<T> no contexto atual do objeto usando a cadeia de consulta especificada.

DatabaseExists()

Verifica se a base de dados especificada como base de dados na ligação atual à fonte de dados existe na fonte de dados.

DeleteDatabase()

Elimina a base de dados que está especificada como base de dados na ligação atual à fonte de dados.

DeleteObject(Object)

Marca um objeto para eliminação.

Detach(Object)

Remove o objeto do contexto do objeto.

DetectChanges()

Assegura que ObjectStateEntry as alterações são sincronizadas com as alterações em todos os objetos que são rastreados pelo ObjectStateManager.

Dispose()

Liberta os recursos usados pelo contexto do objeto.

Dispose(Boolean)

Liberta os recursos usados pelo contexto do objeto.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExecuteFunction(String, ObjectParameter[])

Executa um procedimento ou função armazenada que está definida na fonte de dados e expressa no modelo conceptual; descarta quaisquer resultados devolvidos da função; e devolve o número de linhas afetadas pela execução.

ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[])

Executa o procedimento ou função armazenada definida na fonte de dados e expressa no modelo conceptual, com os parâmetros especificados e a opção de fusão. Devolve um arquivo digitado ObjectResult<T>.

ExecuteFunction<TElement>(String, ObjectParameter[])

Executa um procedimento ou função armazenada definida na fonte de dados e mapeada no modelo conceptual, com os parâmetros especificados. Devolve um arquivo digitado ObjectResult<T>.

ExecuteStoreCommand(String, Object[])

Executa um comando arbitrário diretamente contra a fonte de dados usando a ligação existente.

ExecuteStoreQuery<TElement>(String, Object[])

Executa uma consulta diretamente na fonte de dados que devolve uma sequência de resultados tipados.

ExecuteStoreQuery<TEntity>(String, String, MergeOption, Object[])

Executa uma consulta diretamente na fonte de dados e retorna uma sequência de resultados tipados. Especifique o conjunto de entidades e a opção de fusão para que os resultados da consulta possam ser acompanhados como entidades.

GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetKnownProxyTypes()

Devolve todos os tipos de proxy existentes.

GetObjectByKey(EntityKey)

Devolve um objeto que tem a chave de entidade especificada.

GetObjectType(Type)

Devolve o tipo de entidade da entidade POCO associada a um objeto proxy de um tipo especificado.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
LoadProperty(Object, String, MergeOption)

Carrega explicitamente um objeto relacionado com o objeto fornecido pela propriedade de navegação especificada e usando a opção de fusão especificada.

LoadProperty(Object, String)

Carrega explicitamente um objeto relacionado com o objeto fornecido pela propriedade de navegação especificada e usando a opção de fusão por defeito.

LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption)

Carrega explicitamente um objeto relacionado com o objeto fornecido pela consulta LINQ especificada e usando a opção de fusão especificada.

LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>)

Carrega explicitamente um objeto relacionado com o objeto fornecido pela consulta LINQ especificada e usando a opção de fusão por defeito.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
Refresh(RefreshMode, IEnumerable)

Atualiza uma coleção de objetos no contexto do objeto com dados da fonte de dados.

Refresh(RefreshMode, Object)

Atualiza um objeto no contexto do objeto com dados da fonte de dados.

SaveChanges()

Persiste todas as atualizações na fonte de dados e reinicia o rastreamento de alterações no contexto do objeto.

SaveChanges(Boolean)
Obsoleto.

Persiste todas as atualizações da fonte de dados e, opcionalmente, reinicia o rastreamento de alterações no contexto do objeto.

SaveChanges(SaveOptions)

Persiste todas as atualizações da fonte de dados com o especificado SaveOptions.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
Translate<TElement>(DbDataReader)

Traduz um DbDataReader que contém linhas de dados de entidade para objetos do tipo de entidade solicitado.

Translate<TEntity>(DbDataReader, String, MergeOption)

Traduz um DbDataReader que contém linhas de dados de entidade para objetos do tipo de entidade solicitado, num conjunto específico de entidades, e com a opção de fusão especificada.

TryGetObjectByKey(EntityKey, Object)

Devolve um objeto que tem a chave de entidade especificada.

evento

Name Description
ObjectMaterialized

Ocorre quando um novo objeto entidade é criado a partir de dados na fonte de dados como parte de uma consulta ou operação de carregamento.

SavingChanges

Ocorre quando as alterações são guardadas na fonte de dados.

Aplica-se a

Ver também