我有以下列表以分層方式顯示條目。如果ParentEntryId
爲空,那麼該條目是主條目,否則它是子條目。此外,還有Depth
條目的屬性。如果Depth = 0,則該條目是主條目,如果Depth = 1,則條目是主條目的第一個後代,等等。Razor代碼中的條件col-md-push-X和col-md-X類(使用MVC)
以下是迭代從數據庫檢索到的條目記錄的代碼,併爲每個條目記錄調用_EntryItemView.cshtml視圖。
foreach (var entry in Model.Entries)
{
if (entry.ParentEntryId == null)
{
@Html.Partial("~/Views/Entry/_EntryItemView.cshtml", entry)
foreach (var subentry in Model.Entries.Where(e => e.ParentEntryId == entry.EntryId))
{
@Html.Partial("~/Views/Entry/_EntryItemView.cshtml", entry)
}
}
}
這裏是_EntryitemView.cshtml:
<div class="col-md-12 small list-group main-entry entry-item-view">
</div>
的col-md-12
類在div應該只有當它是一個主入口(具有深度= 0)。然而,當深度= 1,我想有col-md-push-1 col-md-11
<div class="col-md-push-1 col-md-11 small list-group main-entry entry-item-view">
</div>
,如果我想的深度= 2有col-md-push-2 col-md-10
,等等。
有沒有辦法使它自動化?我想知道這是否可以通過Razor來實現?或者我需要使用JQuery?
一種選擇將是包括CSS類作爲您的視圖模型的一部分,從視圖模型直接在'_EntryItemView'視圖應用CSS類。 –
@BakakNaffas什麼樣的css類?你能否詳細說明一下? – renakre