С помощью LINQ развернуть таблицу значений вниз (VB.NET)

Прошу подсказать как развернуть вниз данные из строки вида:

1|25|желтый|синий|красный

2|29|синий|красный|желтый

3|32|зеленый|синий||

Эти данные считываю в массив A, затем из массива делаю A.AsEnumerable в itemEnum

itemEnum определена как IEnumerable(Of String)

дальше пишу

Devices = From line In itemEnum

          Let elements = line.Split("|"c)
          Let account = elements(1)
          Let devs = elements.Skip(2).Take(3)
          Select New With {.Accounts = account,
                           .devices = Enumerable.Range(0, 3).Select(Function(i) devs.Skip(i * 3).Take(3))}'''

Но получаю ошибку

Как получить данные вида:

25

желтый

синий

красный

29

синий

красный

желтый

Спасибо

Сообщение об ошибке: System.InvalidCastException: "Не удалось привести тип объекта "WhereSelectArrayIterator2[System.String,VB$AnonymousType_32[System.String,System.Collections.Generic.IEnumerable1[System.Collections.Generic.IEnumerable1[System.String]]]]" к типу "System.Collections.Generic.IEnumerable`1


Ответы (0 шт):