1

我的选择从 db 返回连接数据,其中每个对象都有几个属性。对于对象的每个属性,我都有一个新行。我使用实体框架来检索数据。

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)

4

1 回答 1

5
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()
               };
于 2012-11-12T23:06:58.117 回答