Подтвердить что ты не робот

Получить все строки, используя сущность framework dbset

Я хочу выбрать все строки из таблицы, используя следующий тип синтаксиса:

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

Прости меня, так как я совершенно новичок в EF.

4b9b3361

Ответ 1

Set<T>() уже IQueryable<T> и возвращает все строки из таблицы

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

Также созданный DbContext будет иметь именованные свойства для каждой таблицы. Найдите DbContext.Companies - это то же самое, что и DbContext.Set<Company>()

Ответ 2

Обычный способ сделать это - создать экземпляр вашего dbContext.

Например:

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

Есть много хороших руководств по использованию инфраструктуры CodeFirst Entity (которые, я полагаю, вы используете, если у вас есть DbContext и являются новыми)