#c# #html #asp.net #datatable #html-table
#c# #HTML #asp.net #datatable #html-таблица
Вопрос:
Допустим, у меня есть массив DataTable[]
. В каждой таблице данных может быть до 5 строк. Каждая строка содержит 5 столбцов. Мне нужно отобразить содержимое DataTable в html-таблице размером 5 x 5, чтобы между ячейкой из DataTable и ячейкой html-таблицы существовало соотношение 1 к 1 (т. е. td).
Кто-нибудь может дать мне фрагмент кода о том, как этого добиться? Для этого необходимо выполнить цикл по длине массива данных. Итак, если есть 3 таблицы данных, необходимо создать 3 html-таблицы.
Пример моего Datatable
Row 1 : Colors, Sizes, Length
Row 2 : Blue , L , 23
Row 3 : Green , M , 24
Row 4 : Red , S , 25
Row 5 : Yellow, , 26
Комментарии:
1. Для меня звучит как куча вложенных циклов. Вы написали какой-либо код?
Ответ №1:
хорошо, вот некоторый код. Я не компилировал его, поэтому могут быть опечатки… но я полагаю, что это поможет вам двигаться в правильном направлении. 3 вложенных цикла.
StringBuilder html = new StringBuilder();
foreach(DataTable aTable in tableList)
{
html.Append("<table>");
foreach(DataRow row in aTable.rows)
{
html.Append("<tr>");
foreach(string cell in row.Items)
{
html.Append("<td>");
if (cell == null)
html.Append("amp;nbsp;");
else
html.Append(cell);
html.Append("</td>");
}
html.Append("</tr>");
}
html.Append("</table>");
}
Комментарии:
1. Похоже, это может сработать … я надеялся увидеть один цикл для no таблиц, поскольку DT имеют фиксированный размер, но я думаю, что небольшой размер не будет иметь большого значения…
2. Спасибо, Хоган, я вернулся к основам, как вы предложили, и получил необходимый мне контент… Для кого-либо еще, если вы захотите использовать этот код, вам придется внести пару незначительных исправлений: 1. используйте строку foreach (DataRow) в таблице. Строки) 2. проверьте наличие нулей в цикле foreach для ячеек строки.
3. У меня нет строки.элементы в —- foreach(строковая ячейка в строке. Элементы). .items не существует. В чем исправление?
4. @icelated : вы использовали нижний регистр
i
вместо верхнегоI
(.items
вместо.Items
)?