У меня есть список объектов, которые могут меняться в зависимости от времени, и я должен отобразить их в таблице. Я пытаюсь перебрать объекты списка, затем отобразить элементы каждого объекта по одному для каждого.
Есть ли другое решение, чтобы показать эти вложенные списки переменных?
В контроллере:
using (SP_DataEntities spdb = new SP_DataEntities())
{
var kvaluesinfo = spdb.SP_KProperties_info(gpId, kId).ToList();
List<Main_DB.Models.Extended.Tbl_KPropertiesAndValues> kInfoList = new List<Models.Extended.Tbl_KPropertiesAndValues>();
foreach (var item in kvaluesinfo)
{
Models.Extended.Tbl_KPropertiesAndValues kvs = new Models.Extended.Tbl_KalaPropertiesAndValues();
kvs.Gk = item.Gk;
kvs.Gname = item.Gname;
kvs.CK = item.Ck;
kvs.Cname = item.Cname;
kvs.SKala = (int)item.Skala;
kvs.PropertyId = item.PropertyId;
kvs.PropertyName = item.PropertyName;
kvs.PropertyTyp = item.PropertyTyp;
if (item.String != null)
{
kvs.String = item.String;
}
else
kvs.String = null;
if (item.Number != null)
{
kvs.number = (int)item.Number;
}
else
kvs.number = 0;
if (item.Boolean != null)
{
kvs.boolean = (bool)item.Boolean;
}
else
kvs.boolean = false;
kInfoList.Add(kvs);
}
}
По виду:
<table id="tbl_installmentDetails" class="table table-striped table-bordered table-sm" cellspacing="0" style="width:100%">
<thead>
@if (Model != null)
{
<tr>
@foreach (var item in Model)
{
<th class="th-sm">
@item.PropertyName
</th>
}
</tr>
}
</thead>
<tbody>
@if (Model != null)
{
foreach (var obj in Model)
{
<tr>
@foreach (var item in obj)
<th> @item.propertyValue </th>
</tr>
}
}
</tbody>
</table>
Во внутреннем foreach на obj я не могу этого сделать, потому что
оператор for-each не может работать с переменными типа «myObject», поскольку «myObject» не содержит определения для «GetEnumerator»