在select语句中使用EF和Linq并排除属性

时间:2014-04-04 09:53:11

标签: c# linq entity-framework

这些方法是通过VS2012和C#中的Entity Framework和Linq创建的, 因此,我想调用一个名为Categories的模型。 每个类别都有一个parentID(null或set),用于修复多重性。 因此,我们有1个父类别,该类别具有类别的子类,

System.Data.Objects.DataClasses.EntityCollection<< Category >>

但是,每个类别都有一个包含大量数据的属性,我们只想在父级上加载该特定属性。 目前的代码是:

selectedCategory = categoryObjectContext.Category.Single<Category>(cat => cat.CategoryID == selectedID);

1 个答案:

答案 0 :(得分:1)

您需要使用.Select()投影查询的结果,并使用Where()子句过滤数据:

int parentID = categoryObjectContext.Category.Where(cat => cat.CategoryID == selectedID)
                   .Select(cat => cat.parentID) // Project the query results into a single field
                   .First(); // This will only select one column