gpt4 book ai didi

c# - Linq 选择具有重复行的结果

转载 作者:太空宇宙 更新时间:2023-11-03 20:21:19 24 4
gpt4 key购买 nike

我的选择返回来自数据库的连接数据,其中每个对象都有几个属性。对于对象的每个属性,我都有一个新行。我使用 Entity Framework 来检索数据。

var products = _ctx.ExecuteFunction<GetProducts_Result>("GetProducts");

GetProducts 是一个返回以下结果的存储过程。

Code    | Name | Term | Rate
--------+------+------+-----
111 | Foo | 12 | 10
111 | Foo | 24 | 12
111 | Foo | 36 | 16
222 | Boo | 12 | 8
222 | Boo | 24 | 9

我如何使用 linq 高效地查询数据并映射到类似的类

class Product
{
int Code
string Name
List<Term> terms;
}

其中Term是一个带有参数(Term, Rate)的类

最佳答案

var products = from p in _ctx.ExecuteFunction<GetProducts_Result>("GetProducts")
group p by new {p.Code, p.Name} into g
select new Product
{
Code = g.Key.Code,
Name = g.Key.Name,
terms = g.Select(x => new Terms {
Term = x.Term,
Rate = x.Rate }).ToList()
};

关于c# - Linq 选择具有重复行的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13353045/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com