ObjectContext Classe
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.
Fornece recursos para consultar e trabalhar com dados de entidade 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 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);
Comentários
Observação
A classe ObjectContext não é segura para threads. A integridade de objetos de dados em um ObjectContext não pode ser assegurada em cenários multithreaded.
A ObjectContext classe é a classe primária para interagir com dados como objetos que são instâncias de tipos de entidade definidos em um modelo conceitual. Uma instância da ObjectContext classe encapsula o seguinte:
Uma conexão com o banco de dados, na forma de um EntityConnection objeto.
Metadados que descrevem o modelo, na forma de um MetadataWorkspace objeto.
Um ObjectStateManager objeto que gerencia objetos persistidos no cache.
Quando a camada de objeto que representa um modelo conceitual é gerada pelas ferramentas do Modelo de Dados de Entidade, a classe que representa o EntityContainer modelo é derivada do ObjectContext.
Construtores
| Nome | Description |
|---|---|
| ObjectContext(EntityConnection, String) |
Inicializa uma nova instância da ObjectContext classe com um determinado nome de contêiner de conexão e entidade. |
| ObjectContext(EntityConnection) |
Inicializa uma nova instância da ObjectContext classe com a conexão fornecida. Durante a construção, o workspace de metadados é extraído do EntityConnection objeto. |
| ObjectContext(String, String) |
Inicializa uma nova instância da classe ObjectContext com um determinado nome de contêiner de entidade e cadeia de conexão. |
| ObjectContext(String) |
Inicializa uma nova instância da classe ObjectContext com o cadeia de conexão fornecido e o nome do contêiner de entidade padrão. |
Propriedades
| Nome | Description |
|---|---|
| CommandTimeout |
Obtém ou define o valor do tempo limite, em segundos, para todas as operações de contexto de objeto. Um |
| Connection |
Obtém a conexã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 do contêiner padrão. |
| MetadataWorkspace |
Obtém o workspace de metadados usado pelo contexto do objeto. |
| ObjectStateManager |
Obtém o gerenciador de estado do objeto usado pelo contexto do objeto para controlar as alterações de objeto. |
| QueryProvider |
Obtém o provedor de consulta LINQ associado a esse contexto de objeto. |
Métodos
| Nome | Description |
|---|---|
| AcceptAllChanges() |
Aceita todas as alterações feitas em 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 em um conjunto de valores originais para o objeto no ObjectContext qual tem a mesma chave. |
| ApplyPropertyChanges(String, Object) |
Obsoleto.
Aplica alterações de propriedade de um objeto desanexado a um objeto já anexado ao contexto do objeto. |
| Attach(IEntityWithKey) |
Anexa um objeto ou grafo de objeto ao contexto do objeto quando o objeto tem uma chave de entidade. |
| AttachTo(String, Object) |
Anexa um objeto ou grafo de objeto ao contexto do objeto em um conjunto de entidades específico. |
| CreateDatabase() |
Cria o banco de dados usando a conexão de fonte de dados atual e os metadados no StoreItemCollection. |
| CreateDatabaseScript() |
Gera um script DDL (linguagem de definição de dados) que cria objetos de esquema (tabelas, chaves primárias, chaves estrangeiras) para os metadados no StoreItemCollection. Os StoreItemCollection metadados de carga dos arquivos SSDL (linguagem de definição de esquema) do repositório. |
| CreateEntityKey(String, Object) |
Cria a chave de entidade para um objeto específico ou retorna a chave de entidade se ela já existir. |
| CreateObject<T>() |
Cria e retorna uma instância do tipo solicitado. |
| CreateObjectSet<TEntity>() |
Cria uma nova ObjectSet<TEntity> instância que é usada para consultar, adicionar, modificar e excluir objetos do tipo de entidade especificado. |
| CreateObjectSet<TEntity>(String) |
Cria uma nova ObjectSet<TEntity> instância que é usada para consultar, adicionar, modificar e excluir 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 do objeto atual usando a cadeia de caracteres de consulta especificada. |
| DatabaseExists() |
Verifica se o banco de dados especificado como o banco de dados na conexão de fonte de dados atual existe na fonte de dados. |
| DeleteDatabase() |
Exclui o banco de dados especificado como o banco de dados na conexão de fonte de dados atual. |
| DeleteObject(Object) |
Marca um objeto para exclusão. |
| Detach(Object) |
Remove o objeto do contexto do objeto. |
| DetectChanges() |
Garante que ObjectStateEntry as alterações sejam sincronizadas com alterações em todos os objetos que são controladas pelo ObjectStateManager. |
| Dispose() |
Libera os recursos usados pelo contexto do objeto. |
| Dispose(Boolean) |
Libera 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 armazenado definido na fonte de dados e expresso no modelo conceitual; descarta todos os resultados retornados da função; e retorna o número de linhas afetadas pela execução. |
| ExecuteFunction<TElement>(String, MergeOption, ObjectParameter[]) |
Executa o procedimento ou função armazenado especificado definido na fonte de dados e expresso no modelo conceitual, com os parâmetros especificados e a opção de mesclagem. Retorna um tipo ObjectResult<T>. |
| ExecuteFunction<TElement>(String, ObjectParameter[]) |
Executa um procedimento ou função armazenado definido na fonte de dados e mapeado no modelo conceitual, com os parâmetros especificados. Retorna um tipo ObjectResult<T>. |
| ExecuteStoreCommand(String, Object[]) |
Executa um comando arbitrário diretamente na fonte de dados usando a conexão existente. |
| ExecuteStoreQuery<TElement>(String, Object[]) |
Executa uma consulta diretamente na fonte de dados que retorna 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 mesclagem para que os resultados da consulta possam ser acompanhados como entidades. |
| GetHashCode() |
Serve como a função de hash padrão. (Herdado de Object) |
| GetKnownProxyTypes() |
Retorna todos os tipos de proxy existentes. |
| GetObjectByKey(EntityKey) |
Retorna um objeto que tem a chave de entidade especificada. |
| GetObjectType(Type) |
Retorna 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 ao objeto fornecido pela propriedade de navegação especificada e usando a opção de mesclagem especificada. |
| LoadProperty(Object, String) |
Carrega explicitamente um objeto relacionado ao objeto fornecido pela propriedade de navegação especificada e usando a opção de mesclagem padrão. |
| LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>, MergeOption) |
Carrega explicitamente um objeto relacionado ao objeto fornecido pela consulta LINQ especificada e usando a opção de mesclagem especificada. |
| LoadProperty<TEntity>(TEntity, Expression<Func<TEntity,Object>>) |
Carrega explicitamente um objeto relacionado ao objeto fornecido pela consulta LINQ especificada e usando a opção de mesclagem padrão. |
| MemberwiseClone() |
Cria uma cópia superficial do Objectatual. (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 redefine o controle de alterações no contexto do objeto. |
| SaveChanges(Boolean) |
Obsoleto.
Persiste todas as atualizações na fonte de dados e, opcionalmente, redefine o controle de alterações no contexto do objeto. |
| SaveChanges(SaveOptions) |
Persiste todas as atualizações para a fonte de dados com a especificada SaveOptions. |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
| Translate<TElement>(DbDataReader) |
Converte um DbDataReader que contém linhas de dados de entidade para objetos do tipo de entidade solicitado. |
| Translate<TEntity>(DbDataReader, String, MergeOption) |
Converte um DbDataReader que contém linhas de dados de entidade para objetos do tipo de entidade solicitado, em um conjunto de entidades específico e com a opção de mesclagem especificada. |
| TryGetObjectByKey(EntityKey, Object) |
Retorna um objeto que tem a chave de entidade especificada. |
Eventos
| Nome | Description |
|---|---|
| ObjectMaterialized |
Ocorre quando um novo objeto de entidade é criado a partir de dados na fonte de dados como parte de uma operação de carga ou consulta. |
| SavingChanges |
Ocorre quando as alterações são salvas na fonte de dados. |