web-dev-qa-db-fra.com

Récupérer toutes les lignes à l'aide du dbset de structure d'entité

Je souhaite sélectionner toutes les lignes d'une table en utilisant le type de syntaxe suivant:

public IQueryable<Company> GetCompanies()
{
    return DbContext.Set<Company>()
    .// Select all
}

Pardonnez-moi car je suis complètement nouveau à EF.

27
Wesley Skeen

Set<T>() est déjà IQueryable<T> et il retourne toutes les lignes de la table

public IQueryable<Company> GetCompanies()
{
    return DbContext.Set<Company>();    
}

Également généré DbContext aura des propriétés nommées pour chaque table. Chercher DbContext.Companies - c'est la même chose que DbContext.Set<Company> ()

38
Sergey Berezovskiy

La façon normale de procéder consiste à instancier votre dbContext.

Par exemple:

public IQueryable<Company> GetCompanies()
{
    using(var context = new MyContext()){ 
        return context.Companies;
    }
}

Il y a beaucoup de bons tutoriels sur l'utilisation du framework CodeFirst Entity (que je suppose que vous utilisez si vous avez un DbContext et que vous êtes nouveau)

18
Luke McGregor