2

我有一个清单

class Vachel
{
int id{get;set;}
int vachelid {get;set;}
string title {get;set;}
}

Vachel 的名单

id  vachelid  title
1   2         bus
1   3         truck
2   4         cycle
2   5         bike
2   5         bick

我想转换List<Vachel>List<Result>

class Result
{
int id{get;set;}
string vachelid {get;set;}
string title {get;set;}
}

结果必须是

   id   vachelid    title
    1   2,3         bus,truck
    2   4,5         cycle,bike,bick

我试过

List<Vachel> V = getList();
List<Result> R = null;
 R = V.GroupBy(x=> new{x.vachelid})
    .Select
       (
       x=> new Result
         {
         id  =x.Key.id,
         vachelid =x.FirstOrDefault().vachelid,
         title   =x.FirstOrDefault().title
         }
       ).ToList();

在这里,我知道我想放一些东西.FirstOrDefault().vachelid.FirstOrDefault().title但我不知道该怎么做。

4

1 回答 1

1
R = V.GroupBy(x => x.id)
     .Select(g => new Result(){
        id = g.Key,
        vachelid = string.Join(",", g.Select(x => x.vachelid).Distinct()),
        title = string.Join(",", g.Select(x => x.title).Distinct()),
     }).ToList();
于 2013-08-13T08:10:22.630 回答