Если вы хотите «отделить один набор данных строки от следующего», просто добавьте промежуточный класс RowSet между вашим RowHelper и вашими строками.
class RowSet
{
public void List<string[]> Rows = new List<string[]>();
}
class RowHelper
{
public List<RowSet> RowSets;
public RowHelper()
{
RowSets = new List<RowSet>();
}
public void CreateRows(SomeClass[] SomeClasses)
{
RowSet set = new RowSet();
foreach(SomeClass rowData in SomeClasses)
{
set.Rows.Add(rowData.ToStringArray());
}
RowSets.Add(set);
}
}
Итак, у RowHelper есть открытое свойство, представляющее собой коллекцию RowSet
экземпляров.
RowSet
содержит ваш список Rows
.
Ваш метод CreateRows
может создать новый экземпляр RowSet
, заполнить его строками и добавить в свойство RowSets
.
Теперь вы можете перебирать RowHelper.RowSets
, а оттуда перебирать RowSet.Rows
.
Подумайте, как вы будете различать ваши RowSet
с, и соответственно выберите класс коллекции. Например, если вы просто будете обращаться к ним последовательно, List<RowSet>
- это хорошо, но если вы хотите использовать, скажем, именованный индекс, рассмотрите Dictionary<string,RowSet>
вместо.