Как получить один столбец с Entity Framework?
У меня есть код для извлечения всех столбцов из класса сущности по критериям поиска. Но я хочу конкретное значение столбца вместо полных значений столбца.
Мой код -
Main main;
main = repo.Find<Main>(m => m.Code == criteria.code);
где Main
класс сущности, repo
это хранилище и criteria
класс критериев поиска. Теперь я хочу получить конкретное имя столбца, скажем, id
, Как мне этого добиться?
3 ответа
При условии, что Find
возвращает IQueryable<T>
Тогда вы можете использовать проекцию:
repo.Find<Main>(m => m.Code == criteria.code).Select(m => m.Column);
var column =
from m in repo
where m.Code == criteria.code
select m.SomeColumn;
Вы делаете проекцию запроса с Select
метод:
repo.Mains.Where(m => m.Code == criteria.code).Select(m => m.Id);
В соответствующей заметке вы должны прочитать " Начало работы с Entity Framework". Это даст вам хорошее представление об операторах запросов.