return 计数和字段的 Linq 语句
Linq statement to return count and fields
我需要能够 return 来自 table 的行,其中存在特定数据列的重复项。
table 包含许多列,但我只需要 return 姓氏、名字、电子邮件和电子邮件数量(即如果有多个记录具有相同的电子邮件地址。)
我试过以下 return 正确的记录:
var _i = (from a in _db.WebPersonalInfos group a by a.Email into g where g.Count() > 1 orderby g.Key select g).ToList();
但是,我需要将其修改为仅 return 姓氏、名字、电子邮件和计数(电子邮件)。
即"Smith"、"Joe"、"jsmith@gmail.com"、4
我不确定如何准确地完成这个。
假设具有相同电子邮件地址的记录具有相同的 first/last 名称,您可以这样做:
var _i = (from a in _db.WebPersonalInfos
group a by a.Email into g
where g.Count() > 1
orderby g.Key
select new {
LastName = g.First().LastName,
FirstName = g.First().FirstName,
Email = g.Key,
Count = g.Count()
})
.ToList();
我需要能够 return 来自 table 的行,其中存在特定数据列的重复项。
table 包含许多列,但我只需要 return 姓氏、名字、电子邮件和电子邮件数量(即如果有多个记录具有相同的电子邮件地址。)
我试过以下 return 正确的记录:
var _i = (from a in _db.WebPersonalInfos group a by a.Email into g where g.Count() > 1 orderby g.Key select g).ToList();
但是,我需要将其修改为仅 return 姓氏、名字、电子邮件和计数(电子邮件)。
即"Smith"、"Joe"、"jsmith@gmail.com"、4
我不确定如何准确地完成这个。
假设具有相同电子邮件地址的记录具有相同的 first/last 名称,您可以这样做:
var _i = (from a in _db.WebPersonalInfos
group a by a.Email into g
where g.Count() > 1
orderby g.Key
select new {
LastName = g.First().LastName,
FirstName = g.First().FirstName,
Email = g.Key,
Count = g.Count()
})
.ToList();