Linq to sql 具有select语句的多级对象上的Linq组
我有3个数据集对象,它们使用实体集对象相互嵌套。我选择这样的数据Linq to sql 具有select语句的多级对象上的Linq组,linq-to-sql,linq-group,Linq To Sql,Linq Group,我有3个数据集对象,它们使用实体集对象相互嵌套。我选择这样的数据 var newList = from s in MainTable from a in s.SubTable1 where a.ColumnX = "value" from b in a.Detail where b.Name = "searchValue" select new { ID = s.ID, Company = a.CompanyName, Name = b.Name, Date =
var newList = from s in MainTable
from a in s.SubTable1 where a.ColumnX = "value"
from b in a.Detail where b.Name = "searchValue"
select new {
ID = s.ID,
Company = a.CompanyName,
Name = b.Name,
Date = s.DueDate
Colour = b.Colour,
Town = a.Town
};
这很好,但问题是每个名称值的详细对象列表/表中都有许多记录,因此我得到了大量重复的行,因此我只希望每个b.Name显示一条记录。我试过把
group s by b.Name into g
在选择之前,但这似乎停止了选择,使我能够选择我想要的列(实际上还有更多)。在这种情况下,如何使用group命令,同时仍将输出行保持为“平面”格式?将注释作为结束问题的答案:-
当然,如果对结果进行分组,则无法选择子项的列,这是因为可能有多个子项,并且必须指定一个聚合列,例如sum,max etx–当然,如果对结果进行分组,则无法选择子项的列,这是因为可能有多个child,您必须指定一个聚合列,例如sum,max etxI,我只从底部的child中选择一列,所有其他列都来自顶部或中间的父级,因此没有理由会有任何歧义,但我从SQL的角度理解您的意思。是的,根据每一个专栏进行分组,你能把它作为一个答案吗,亚历杭德罗博,这样我就可以把正确的答案和相关的分数归功于你了