2014-10-29 1 views
0

У меня есть DatatableLINQ Group по и вернуть все столбцы в C#

 ID  RS 
    1484 1751 
    1668 15277 
    1677 3925 


    1484 1214 
    1668 7940 
    1677 696 


    1484 1849 
    1668 7781 
    1677 484 


    1484 1395 
    1668 5715 
    1677 416 

& Я хочу следующие результаты после применения Linq группы по Связующее 2 одномерный массив

var a = new string[][] { 
       new[] { "1484 ","[1751, 1214, 1849, 1395]" }, 
       new[] { "1668" ,"[15277, 7940, 7781, 5715"} , 
       new[] { "1677","[3925,696, 484, 416} 
         }; 

ответ

2

Попробуйте это:

var a = 
    items 
     .ToLookup(x => x.ID, x => x.RS) 
     .Select(x => new [] 
     { 
      x.Key.ToString(), 
      String.Format("[{0}]", String.Join(", ", x)) 
     }) 
     .ToArray(); 

Это дает мне:

a

0

Вам необходимо группы по basisi поля ID

 var result = (from d in data 
            group d by d.ID into gr 
            select new 
            { 
             ID = gr.Key, 
             DataList = gr.ToList() 
            }).ToList(); 

Здесь Вы можете получить список сгруппированных значений.

-2

Попробуйте

Datacontexts db=new Datacontext(); 
    var query=from i in db.table group by ID select new{i.Id,i.Rs}; 
+0

@Sajidlodi - вам необходимо удалить ваш комментарий. Таким образом, переполнение стека происходит таким образом. – Enigmativity

+0

это неправильный ответ –

Смежные вопросы