Попытка избежать использования двух вложенных циклов for в приведенном ниже коде, но я не могу придумать, как объединить обе DataTables, не используя два цикла for.Обратите внимание, что обе DataTables являются динамическими, поэтому я не смог решить проблему на уровне SQL Query.
Приведенный ниже DataTable получает все разделы из базы данных.Их количество ограничено, но они динамичны.
Dim dtSections As DataTable = HomeSections()
Цикл по разделам и получение всех связанных элементов для каждого раздела:
If dtSections.Rows.Count > 0 Then
For Each mySectionRow As DataRow In dtSections.Rows
Dim dtItems As DataTable = getItemsBySection(sectionId)
If dtItems.Rows.Count > 0 Then
For Each myItemRow As DataRow In dtItems.Rows
'Some HTML population
Next
End if
Next
End if
Мне было интересно, что может быть лучшим способом избежатьиспользование вложенных циклов for, когда значения второго DataTable зависят от значений первого DataTable.Я думал об использовании DataSet, но не думаю, что смогу сгенерировать второй DataTable на основе результатов первого.
Если эта проблема будет решена на уровне кода или на уровне SQL(Хранимая процедура, например)?