Compartilhar via


DbSet Classe

Definição

Uma versão não genérica da DbSet<TEntity> qual pode ser usada quando o tipo de entidade não é conhecido no momento da compilação.

[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Justification="Name is intentional")]
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1709:IdentifiersShouldBeCasedCorrectly", Justification="Casing is intentional")]
public abstract class DbSet : System.Data.Entity.Infrastructure.DbQuery
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1010:CollectionsShouldImplementGenericInterface")]
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Naming", "CA1710:IdentifiersShouldHaveCorrectSuffix", Justification="Name is intentional")]
public abstract class DbSet : System.Data.Entity.Infrastructure.DbQuery
type DbSet = class
    inherit DbQuery
Public MustInherit Class DbSet
Inherits DbQuery
Herança
DbSet
Atributos

Construtores

DbSet()

Cria uma instância de um DbSet quando chamado do construtor de um tipo derivado que será usado como um double de teste para DbSets. Métodos e propriedades que serão usados pelo duplo teste devem ser implementados pelo duplo teste, exceto AsNoTracking, AsStreaming, um Include em que a implementação padrão é uma no-op.

Propriedades

ElementType

O tipo de elemento IQueryable.

(Herdado de DbQuery)
Local

Obtém um que representa uma exibição ObservableCollection<T> local de todas as entidades Adicionadas, Inalteradas e Modificadas neste conjunto. Essa exibição local permanecerá em sincronia à medida que as entidades forem adicionadas ou removidas do contexto. Da mesma forma, as entidades adicionadas ou removidas do modo de exibição local serão automaticamente adicionadas ou removidas do contexto.

Sql

Obtém uma String representação da consulta subjacente.

(Herdado de DbQuery)

Métodos

Add(Object)

Adiciona a entidade fornecida ao contexto subjacente ao conjunto no estado Adicionado, de modo que ela será inserida no banco de dados quando SaveChanges for chamado.

AddRange(IEnumerable)

Adiciona a coleção determinada de entidades ao contexto subjacente ao conjunto com cada entidade sendo colocada no estado Adicionado de modo que ela seja inserida no banco de dados quando SaveChanges for chamado.

AsNoTracking()

Retorna uma nova consulta em que as entidades retornadas não serão armazenadas em cache no DbContext.

(Herdado de DbQuery)
AsStreaming()
Obsoleto.

Retorna uma nova consulta que transmitirá os resultados em vez de buffer.

(Herdado de DbQuery)
Attach(Object)

Anexa a entidade fornecida ao contexto subjacente ao conjunto. Ou seja, a entidade é colocada no contexto no estado Inalterado, assim como se tivesse sido lida do banco de dados.

Cast<TEntity>()

Retorna o objeto genérico DbSet<TEntity> equivalente.

Create()

Cria uma nova instância de uma entidade para o tipo desse conjunto. Observe que essa instância NÃO é adicionada ou anexada ao conjunto. A instância retornada será um proxy se o contexto subjacente estiver configurado para criar proxies e o tipo de entidade atender aos requisitos para criar um proxy.

Create(Type)

Cria uma nova instância de uma entidade para o tipo desse conjunto ou para um tipo derivado do tipo desse conjunto. Observe que essa instância NÃO é adicionada ou anexada ao conjunto. A instância retornada será um proxy se o contexto subjacente estiver configurado para criar proxies e o tipo de entidade atender aos requisitos para criar um proxy.

Equals(Object)

Uma versão não genérica da DbSet<TEntity> qual pode ser usada quando o tipo de entidade não é conhecido no momento da compilação.

Find(Object[])

Localiza uma entidade com os valores de chave primária fornecidos. Se houver uma entidade com os valores de chave primária fornecidos no contexto, ela será retornada imediatamente sem fazer uma solicitação ao repositório. Caso contrário, uma solicitação será feita ao repositório para uma entidade com os valores de chave primária fornecidos e essa entidade, se encontrada, será anexada ao contexto e retornada. Se nenhuma entidade for encontrada no contexto ou no repositório, será retornado nulo.

FindAsync(CancellationToken, Object[])

Localiza de forma assíncrona uma entidade com os valores de chave primária fornecidos. Se houver uma entidade com os valores de chave primária fornecidos no contexto, ela será retornada imediatamente sem fazer uma solicitação ao repositório. Caso contrário, uma solicitação será feita ao repositório para uma entidade com os valores de chave primária fornecidos e essa entidade, se encontrada, será anexada ao contexto e retornada. Se nenhuma entidade for encontrada no contexto ou no repositório, será retornado nulo.

FindAsync(Object[])

Localiza de forma assíncrona uma entidade com os valores de chave primária fornecidos. Se houver uma entidade com os valores de chave primária fornecidos no contexto, ela será retornada imediatamente sem fazer uma solicitação ao repositório. Caso contrário, uma solicitação será feita ao repositório para uma entidade com os valores de chave primária fornecidos e essa entidade, se encontrada, será anexada ao contexto e retornada. Se nenhuma entidade for encontrada no contexto ou no repositório, será retornado nulo.

GetHashCode()

Uma versão não genérica da DbSet<TEntity> qual pode ser usada quando o tipo de entidade não é conhecido no momento da compilação.

GetType()

Uma versão não genérica da DbSet<TEntity> qual pode ser usada quando o tipo de entidade não é conhecido no momento da compilação.

Include(String)

Especifica os objetos relacionados para inclusão nos resultados da consulta.

(Herdado de DbQuery)
Remove(Object)

Marca a entidade fornecida como Excluída, de modo que ela será excluída do banco de dados quando SaveChanges for chamado. Observe que a entidade deve existir no contexto em algum outro estado antes que esse método seja chamado.

RemoveRange(IEnumerable)

Remove a coleção determinada de entidades do contexto subjacente ao conjunto com cada entidade sendo colocada no estado Excluído de modo que ela seja excluída do banco de dados quando SaveChanges for chamado.

SqlQuery(String, Object[])

Cria uma consulta SQL bruta que retornará entidades nesse conjunto. Por padrão, as entidades retornadas são controladas pelo contexto; isso pode ser alterado chamando AsNoTracking no DbRawSqlQuery retornado. Observe que as entidades retornadas são sempre do tipo para esse conjunto e nunca de um tipo derivado. Se a tabela ou tabelas consultadas puderem conter dados para outros tipos de entidade, a consulta SQL deverá ser gravada adequadamente para garantir que apenas entidades do tipo correto sejam retornadas.

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. Set(typeof(Blog)). SqlQuery("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. Set(typeof(Blog)). SqlQuery("SELECT * FROM dbo. Postagens WHERE Author = @author", new SqlParameter("@author", userSuppliedAuthor));

ToString()

Retorna uma String representação da consulta subjacente.

(Herdado de DbQuery)

Implantações explícitas de interface

IDbAsyncEnumerable.GetAsyncEnumerator()

Retorna um IDbAsyncEnumerator que, quando enumerado, executará a consulta no banco de dados.

(Herdado de DbQuery)
IEnumerable.GetEnumerator()

Retorna um IEnumerator que, quando enumerado, executará a consulta no banco de dados.

(Herdado de DbQuery)
IListSource.ContainsListCollection

Retorna false.

(Herdado de DbQuery)
IListSource.GetList()

Gera uma exceção indicando que não há suporte para associação diretamente a uma consulta de repositório. Em vez disso, preencha um DbSet com dados, por exemplo, usando o método de extensão Load e, em seguida, associe a dados locais. Para associação WPF a DbSet.Local. Para Windows Forms associar a DbSet.Local.ToBindingList().

(Herdado de DbQuery)
IQueryable.Expression

A expressão LINQ IQueryable.

(Herdado de DbQuery)
IQueryable.Provider

O provedor IQueryable.

(Herdado de DbQuery)

Aplica-se a