none
Ienumerable to ObservableCollection RRS feed

  • Вопрос

  • Добрый день

    Есть у меня коллекция

    ObservableCollection<Adress> obs


    Потом решил сгруппировать её

    var result = obs.GroupBy(p => p.NameStreet);

    В итоге получился тип result Ienumerable<Igrouping<string, Adress>>

    потом нужно пройтись циклом по результатам группировки

    foreach (var item in result) {

    CreateRFild(8.0, item.); // тут необходимо отправить NameStreet foreach (var items in item) { ... тут все нормально } }

    Но тут я не могу получить item.NameStreet

    Пробовал

    var observable = new ObservableCollection<Adress>(result);


    Но тоже ошибка

    Так работает но только первый элемент из группировки

    foreach (var item in result)
                {
                    CreateRFild(8.0, item.FirstOrDefault()); // Так работает но только первый элемент NameStreet
                    foreach (var items in item)
                    {
                       ... тут все нормально
                    }
                }

    • Изменено DevingAs 24 сентября 2016 г. 23:05
    24 сентября 2016 г. 23:01

Ответы

  • Добрый день.

    У вас в item есть Key и коллекция. Т.к. у вас прошла группировка, то в item все элементы имеют одинаковый NameStreet, поэтому не принципиально вызовете ли вы item.Key или item.First().NameStreet, результат будет одинаковый.

    Если же вам нужно не NamStreet, а сам объект адреса, то просто вызов метода переместите во второй foreach и передавайте в метод items (кстати, неудачное название).

    • Помечено в качестве ответа DevingAs 26 сентября 2016 г. 11:10
    26 сентября 2016 г. 9:54
    Отвечающий