2014-06-09 3 views
-2

В настоящее время я изучаю LINQ, но у меня проблемы с группировкой. Я просто хочу отображать уникальные значения в поле со списком для TxtProductFamily. Я получаю нулевые записи в выпадающем меню:Группировка с использованием LINQ - возврат нулевых записей

var sel = (from o in db.r2_machine group o by o.product_family).ToList(); 
TxtProductFamily.ItemsSource = sel; 
+0

вы могли бы мне помочь с тем, что я должен поставить. Спасибо. – AndyDB

+0

проверить мой ответ – Trikaldarshi

+0

Когда вы отлаживаете, проверьте, есть ли в нем результаты «sel». Если это не так, выясните, почему запрос возвращает нулевые результаты. Однако, если у него есть результаты, устраните неполадку, почему результаты не переходят в значения выпадающего списка с помощью элемента управления со списком. – Grax

ответ

2

вы должны сделать так:

var sel = (from o in db.r2_machine 
      group o by o.product_family into g 
      select g.Key).ToList(); 
TxtProductFamily.ItemsSource = sel; 
+0

если данные есть, то они должны работать, вы можете показать некоторые данные –

+0

@AndyDB «игнорировать этот последний бит», что вы имеете в виду? –

+0

вы можете удалить этот комментарий .. :) –

1

Вы не выбираете данные после группировки. Используйте метод Select.

var sel = (from o in db.r2_machine 
      group o by o.product_family into g 
      select g.Key).ToList(); 

    TxtProductFamily.ItemsSource = sel; 
+0

Из интереса, почему вы выбрали 'Select', используя синтаксис лямбда, а не синтаксис запроса, используемый остальной частью запроса? –

+0

@ DanielKelley Вы правы, обновлены. –

1

Вы должны выбрать что-то, чтобы получить вывод,

var outPut= (from o in db.r2_machine 
      group o by o.product_family into g 
      select g).ToList(); 
TxtProductFamily.ItemsSource = outPut; 
Смежные вопросы