如何使用实体框架获取单个列

本文关键字:获取 单个列 框架 实体 何使用 | 更新日期: 2023-09-27 18:22:02

我有代码可以根据搜索条件从实体类中检索所有列。但是我想要一个特定的列值,而不是完整的列值。

我的代码是-

Main main;
main = repo.Find<Main>(m => m.Code == criteria.code);

其中Main是实体类,repo是存储库,criteria是搜索条件类。现在我想得到一个特定的列名,比如id。我怎样才能做到这一点?

如何使用实体框架获取单个列

假设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);

在相关的说明中,您应该阅读《实体框架入门》。它将使您对查询运算符有一个很好的了解。