我想在linq中使用distinct。在我使用distinct之后我不选择任何字段。是否有可能在不同之后进行选择。
query.select(x=>x.FirmName).Distinct().Select(x => new InvoiceSumReportrModel { Firma = x.FirmName, Id = x.Id,Country=x.Country }).AsQueryable();
答案 0 :(得分:2)
您可以使用Distinct
为每个FirmName创建一个组,而不是使用GroupBy
,然后从每个组中抓取第一个公司并将其投影到InvoiceSumReportModel
... < / p>
query.GroupBy(x => x.FirmName,
(k, g) => g.Select(
x => new InvoiceSumReportrModel
{
Firma = x.FirmName,
Id = x.Id,
Country = x.Country
})
.First());