在我的应用程序中,我有一个视图,我可以根据此模型获取项目列表:
public class ItemList
{
public ObjInfo m_Obj { get; set;}
public List<ObjData> m_ObjDataList { get; set;}
}
当我返回列表时,m_Obj将始终链接。 ObjData的列表将在0到4之间变化,但我需要始终显示4个用于格式化的插槽。
所以这就是我的观点的结构:
<table>
<tr>
<th>
Object Name
</th>
<th>
Obj Data
</th>
<th>
Date of Data
</th>
</tr>
@for (int i = 0; i < Model.Count; i++)
{
<tr>
<th rowspan="4">
@Html.ActionLink(Model[i].m_Obj.m_ObjName, "ShowObjData", new { id = Model[i].m_Obj.m_ObjID })
</th>
@for (int j = 0; j < Model[i].m_ObjDataList.Count; j++)
{
<tr>
<td>@Html.DisplayFor(item => Model[i].m_ObjDataList[j].m_DataProvider.m_DataProviderName)</td>
</tr>
<tr>
<td>@Html.DisplayFor(item => Model[i].m_ObjDataList[j].AnIntValue)</td>
</tr>
<tr>
<td>@Html.DisplayFor(item => item[i].m_ObjDataList[j].m_DateDataSaved)</td>
</tr>
}
</tr>
}
</table>
所以,基本上,我想产生这样的效果:
Obj Name Obj Data Date of Data
Obj 1 Data 1 Date1
Data 2 Date2
Data 3 Date3
Data 4 Date4
Obj 2 Data 1 Date1
Data 2 Date2
Data 3 Date3
Data 4 Date4
但是我很难像我喜欢的那样格式化价值观,这就是我寻求帮助的原因。
答案 0 :(得分:1)
经过多次努力后找到了我的答案!
我需要像这样格式化我的表:
<table class="objItemTable">
<tr>
<th>
Object Name
</th>
<th>
Provider
</th>
<th>
Obj Data
</th>
<th>
Date of Data
</th>
</tr>
@for (int i = 0; i < Model.Count; i++)
{
var className = i%2 == 0 ? "even" : "odd";
<tr>
<th rowspan="5">
@Html.ActionLink(Model[i].m_Obj.m_ObjName, "ShowObjData", new { id = Model[i].m_Obj.m_ObjId })
</th>
@for (int j = 0; j < Model[i].m_ObjDataList.Count; j++)
{
<tr class="@className">
<td>@Html.DisplayFor(item => Model[i].m_ObjDataList[j].m_DataProvider.m_DataProviderNa,e)</td>
<td>@Html.DisplayFor(item => Model[i].m_ObjDataList[j].AnIntValue)</td>
<td>@Html.DisplayFor(item => item[i].m_ObjDataList[j].m_DateDataSaved)</td>
</tr>
}
</tr>
}
</table>
... Annnnd现在它显示得很好。 :)