Compartilhar via


ObjectContext Classe

Definição

ObjectContext é o objeto de nível superior que encapsula uma conexão entre o CLR e o banco de dados, servindo como um gateway para as operações Criar, Ler, Atualizar e Excluir.

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Maintainability", "CA1506:AvoidExcessiveClassCoupling")]
public class ObjectContext : IDisposable, System.Data.Entity.Infrastructure.IObjectContextAdapter
type ObjectContext = class
    interface IDisposable
    interface IObjectContextAdapter
Public Class ObjectContext
Implements IDisposable, IObjectContextAdapter
Herança
ObjectContext
Atributos
Implementações

Construtores

ObjectContext(EntityConnection)

Inicializa uma nova instância da classe ObjectContext com a conexão determinada. Durante a construção, o workspace de metadados é extraído do objeto EntityConnection.

ObjectContext(EntityConnection, Boolean)

Cria um ObjectContext com a conexão e o workspace de metadados fornecidos.

ObjectContext(EntityConnection, String)

Inicializa uma nova instância da classe ObjectContext com uma conexão e o nome do contêiner de entidade determinados.

ObjectContext(String)

Inicializa uma nova instância da classe ObjectContext com a cadeia de conexão e o nome do contêiner de entidade padrão determinados.

ObjectContext(String, String)

Inicializa uma nova instância da classe ObjectContext com a cadeia de conexão e o nome do contêiner de entidade determinados.

Propriedades

CommandTimeout

Obtém ou define o valor de tempo limite, em segundos, para todas as operações de contexto de objeto. Um valor nulo indica que o valor padrão do provedor subjacente será usado.

Connection

Obtém a conexão usada pelo contexto de 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.

InterceptionContext

Retorna o DbInterceptionContext que está sendo usado para esse contexto.

MetadataWorkspace

Obtém o workspace de metadados usado pelo contexto de objeto.

ObjectStateManager

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

QueryProvider

Obtém o provedor de consulta de LINQ associado a este contexto de objeto.

TransactionHandler

Obtém o manipulador de transações em uso por esse contexto. Pode ser nulo se nenhuma transação tiver sido iniciada.

Métodos

AcceptAllChanges()

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

AddObject(String, Object)

Adiciona um objeto ao contexto de 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 um conjunto de valores originais para o objeto no ObjectContext que tem a mesma chave.

ApplyPropertyChanges(String, Object)
Obsoleto.

Aplica alterações de propriedade de um objeto desanexado a um objeto que já está anexado ao contexto de objeto.

Attach(IEntityWithKey)

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

AttachTo(String, Object)

Anexa um objeto ou um grafo de objeto ao contexto de 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 . O StoreItemCollection carrega os metadados de arquivos SSDL (linguagem de definição de esquema de repositório).

CreateEntityKey(String, Object)

Cria a chave da entidade para um objeto específico ou retorna a chave da entidade se ela já existe.

CreateObject<T>()

Cria e retorna uma instância do tipo solicitado.

CreateObjectSet<TEntity>()

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

CreateObjectSet<TEntity>(String)

Cria uma nova instância ObjectSet<TEntity> 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 de 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 do repositório atual existe no repositório. A maior parte do trabalho real é feita pela implementação de DbProviderServices para a conexão de repositório atual.

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 de contexto de objeto.

DetectChanges()

Garante que ObjectStateEntry as alterações sejam sincronizadas com alterações em todos os objetos que são controlados pelo ObjectStateManager .

Dispose()

Libera os recursos usados pelo contexto de objeto.

Dispose(Boolean)

Libera os recursos usados pelo contexto de objeto.

ExecuteFunction(String, ObjectParameter[])

Executa um procedimento armazenado ou uma função definida na fonte de dados e expressa no modelo conceitual, descarta os resultados retornados da função e retorna o número de linhas afetado pela execução.

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

Executa a função fornecida no contêiner padrão.

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

Executa uma função ou procedimento armazenado determinados, definidos na fonte de dados e expressos no modelo conceitual com os parâmetros especificados e opção de mesclagem. Retorna um tipado ObjectResult<T> .

ExecuteFunction<TElement>(String, ObjectParameter[])

Executa uma função ou procedimento armazenado definido na fonte de dados e mapeado no modelo conceitual, com os parâmetros especificados. Retorna um tipado ObjectResult<T> .

ExecuteStoreCommand(String, Object[])

Executa um comando arbitrário diretamente na fonte de dados usando a conexão existente. O comando é especificado usando a linguagem de consulta nativa do servidor, como SQL.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreCommand("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreCommand("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreCommand(TransactionalBehavior, String, Object[])

Executa um comando arbitrário diretamente na fonte de dados usando a conexão existente. O comando é especificado usando a linguagem de consulta nativa do servidor, como SQL.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreCommand("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreCommand("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreCommandAsync(String, CancellationToken, Object[])

Executa de forma assíncrona um comando arbitrário diretamente na fonte de dados usando a conexão existente. O comando é especificado usando a linguagem de consulta nativa do servidor, como SQL.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreCommandAsync(String, Object[])

Executa de forma assíncrona um comando arbitrário diretamente na fonte de dados usando a conexão existente. O comando é especificado usando a linguagem de consulta nativa do servidor, como SQL.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreCommandAsync(TransactionalBehavior, String, CancellationToken, Object[])

Executa de forma assíncrona um comando arbitrário diretamente na fonte de dados usando a conexão existente. O comando é especificado usando a linguagem de consulta nativa do servidor, como SQL.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreCommandAsync(TransactionalBehavior, String, Object[])

Executa de forma assíncrona um comando arbitrário diretamente na fonte de dados usando a conexão existente. O comando é especificado usando a linguagem de consulta nativa do servidor, como SQL.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreCommandAsync("UPDATE dbo. Postagens SET Rating = 5 WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQuery<TElement>(String, ExecutionOptions, Object[])

Executa uma consulta diretamente na fonte de dados e retorna uma sequência de resultados digitados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Os resultados não são acompanhados pelo contexto, use a sobrecarga que especifica um nome de conjunto de entidades para acompanhar os resultados.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQuery<TElement>(String, Object[])

Executa uma consulta diretamente na fonte de dados e retorna uma sequência de resultados digitados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Os resultados não são acompanhados pelo contexto, use a sobrecarga que especifica um nome de conjunto de entidades para acompanhar os resultados.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQuery<TElement>(String, String, ExecutionOptions, Object[])

Executa uma consulta diretamente na fonte de dados e retorna uma sequência de resultados digitados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Se um nome de conjunto de entidades for especificado, os resultados serão acompanhados pelo contexto.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

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

Executa uma consulta diretamente na fonte de dados e retorna uma sequência de resultados digitados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Se um nome de conjunto de entidades for especificado, os resultados serão acompanhados pelo contexto.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQuery<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQueryAsync<TElement>(String, CancellationToken, Object[])

Executa uma consulta de forma assíncrona diretamente na fonte de dados e retorna uma sequência de resultados tipados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Os resultados não são acompanhados pelo contexto, use a sobrecarga que especifica um nome de conjunto de entidades para acompanhar os resultados.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, CancellationToken, Object[])

Executa uma consulta de forma assíncrona diretamente na fonte de dados e retorna uma sequência de resultados tipados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Os resultados não são acompanhados pelo contexto, use a sobrecarga que especifica um nome de conjunto de entidades para acompanhar os resultados.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQueryAsync<TElement>(String, ExecutionOptions, Object[])

Executa uma consulta de forma assíncrona diretamente na fonte de dados e retorna uma sequência de resultados tipados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Os resultados não são acompanhados pelo contexto, use a sobrecarga que especifica um nome de conjunto de entidades para acompanhar os resultados.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQueryAsync<TElement>(String, Object[])

Executa uma consulta de forma assíncrona diretamente na fonte de dados e retorna uma sequência de resultados tipados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Os resultados não são acompanhados pelo contexto, use a sobrecarga que especifica um nome de conjunto de entidades para acompanhar os resultados.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, CancellationToken, Object[])

Executa uma consulta de forma assíncrona diretamente na fonte de dados e retorna uma sequência de resultados tipados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Se um nome de conjunto de entidades for especificado, os resultados serão acompanhados pelo contexto.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ExecuteStoreQueryAsync<TElement>(String, String, ExecutionOptions, Object[])

Executa uma consulta de forma assíncrona diretamente na fonte de dados e retorna uma sequência de resultados tipados. A consulta é especificada usando a linguagem de consulta nativa do servidor, como SQL. Se um nome de conjunto de entidades for especificado, os resultados serão acompanhados pelo contexto.

Assim como acontece com qualquer API que aceite o SQL, é importante parametrizar qualquer entrada do usuário para proteger contra um ataque de injeção de SQL. Você pode incluir os espaços reservados para parâmetros na cadeia de caracteres de consulta SQL e, em seguida, fornecer valores de parâmetro como argumentos adicionais. Todos os valores de parâmetro fornecidos serão convertidos automaticamente em um DbParameter. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @p0", userSuppliedAuthor); Como alternativa, você também pode construir um DbParameter e fornecê-lo ao SqlQuery. Isso permite usar parâmetros nomeados na cadeia de caracteres de consulta SQL. Contexto. ExecuteStoreQueryAsync<Post>("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

Finalize()

Finaliza uma instância da ObjectContext classe .

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.

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(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<TEntity>(TEntity, Expression<Func<TEntity,Object>>)

Carrega explicitamente um objeto relacionado ao objeto fornecido pela consulta de LINQ 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 de LINQ especificada e usando a opção de mesclagem especificada.

Refresh(RefreshMode, IEnumerable)

Atualizações uma coleção de objetos no contexto do objeto com dados do banco de dados.

Refresh(RefreshMode, Object)

Atualizações um objeto no contexto do objeto com dados do banco de dados.

RefreshAsync(RefreshMode, IEnumerable)

Atualiza de forma assíncrona uma coleção de objetos no contexto do objeto com dados do banco de dados.

RefreshAsync(RefreshMode, IEnumerable, CancellationToken)

Atualiza de forma assíncrona uma coleção de objetos no contexto do objeto com dados do banco de dados.

RefreshAsync(RefreshMode, Object)

Atualiza de forma assíncrona um objeto no contexto do objeto com dados do banco de dados.

RefreshAsync(RefreshMode, Object, CancellationToken)

Atualiza de forma assíncrona um objeto no contexto do objeto com dados do banco de dados.

SaveChanges()

Persiste todas as atualizações no banco de dados e redefine o controle de alterações no contexto do objeto.

SaveChanges(Boolean)
Obsoleto.

Persiste todas as atualizações no banco de dados e, opcionalmente, redefine o controle de alterações no contexto do objeto.

SaveChanges(SaveOptions)

Persiste todas as atualizações no banco de dados e, opcionalmente, redefine o controle de alterações no contexto do objeto.

SaveChangesAsync()

Persiste de forma assíncrona todas as atualizações no banco de dados e redefine o controle de alterações no contexto do objeto.

SaveChangesAsync(CancellationToken)

Persiste de forma assíncrona todas as atualizações no banco de dados e redefine o controle de alterações no contexto do objeto.

SaveChangesAsync(SaveOptions)

Persiste de forma assíncrona todas as atualizações no banco de dados e, opcionalmente, redefine o controle de alterações no contexto do objeto.

SaveChangesAsync(SaveOptions, CancellationToken)

Persiste de forma assíncrona todas as atualizações no banco de dados e, opcionalmente, redefine o controle de alterações no contexto do objeto.

Translate<TElement>(DbDataReader)

Converte um DbDataReader que contém linhas de dados de entidade em objetos do tipo de entidade solicitado.

Translate<TEntity>(DbDataReader, String, MergeOption)

Converte um DbDataReader que contém linhas de dados de entidade em objetos do tipo de entidade solicitada, em um conjunto de entidades específicas e com a opção de mesclagem especificada.

TryGetObjectByKey(EntityKey, Object)

Retorna um objeto que tem a chave de entidade especificada.

Eventos

ObjectMaterialized

Ocorre quando um novo objeto de entidade é criado com base na fonte de dados como parte de uma operação de consulta ou carga.

SavingChanges

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

Implantações explícitas de interface

IObjectContextAdapter.ObjectContext

Retorna a si mesmo. ObjectContext implementa IObjectContextAdapter para fornecer uma interface comum para DbContext e ObjectContext ambos retornarão o ObjectContext subjacente.

Aplica-se a