我的問題是在哪裏放置返回的表格數據的邏輯。把表格數據的邏輯放在哪裏
我正在玩一個顯示課程和學生入學的教程。
這裏是從屏幕
評分標題名字
2.00經濟學蒂貝茨編輯數據|詳細信息|刪除
3.50 Economics Guzman編輯|詳細信息|刪除
4.00 Literature Catlett編輯|詳細信息|刪除
1.80 Literature Tibbetts編輯|詳細信息|刪除
3.20 Chemistry Tibbetts編輯|詳細信息|刪除
4.00 Chemistry Guzman編輯|詳細信息|刪除
4.00 Literature Pete Edit |詳細信息|刪除
代碼開始時只是顯示錶數據
@foreach (var item in Model.Enrollments)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Course.Title)
</td>
<td>
@Html.DisplayFor(modelItem => item.Grade)
</td>
<td>
@Html.DisplayFor(modelItem => item.Course.Credits)
</td>
</tr>
}
我能夠改變TR紅色背景,如果等級是< = 2通過添加瓦爾風格 和風格=「@風格」(在堆棧溢出發現這個)
@foreach (var item in Model.Enrollments)
{
var style = item.Grade <= 2 ? "background-color:Red" : null;
<tr style="@style">
<td>
@Html.DisplayFor(modelItem => item.Course.Title)
</td>
<td>
@Html.DisplayFor(modelItem => item.Grade)
</td>
<td>
@Html.DisplayFor(modelItem => item.Course.Credits)
</td>
</tr>
}
這是正確的,因爲它是在視圖上,我會怎麼做更難的事像上的刪除動作經濟的標題s或不顯示用戶lastname
如果它以「T」開頭 這是全部應該在PartialView或控制器或兩者兼而有之以及如何做到這一點。 一個例子會很棒。我想我只是不明白如何在數據進入視圖之前對其進行按摩。
我是一個經典的asp實施者轉移到MVC。我意識到應該有一個單獨的代碼,以便它不像經典的意大利麪條,但我是一個新手,並且對如何這樣做感到困惑。 在過去,我會做一個if語句並執行邏輯,然後根據它執行asp和or html。
使用其他屬性創建視圖模型以表示要顯示的內容。例如,'EnrollmentsViewModel'可以包含一個屬性'bool CanDelete',用於有條件地渲染元素。在將其傳遞給視圖之前,先在控制器中設置這些屬性。 – 2014-12-07 01:10:41
感謝您的快速回復。所以我會有一個名爲viewModels的新文件夾,然後我會在裏面有一個具有邏輯的方法的類。我想知道你是否有一個例子或我可以看的東西。我從來沒有製作過視圖模型或其他任何東西。 – dnice 2014-12-07 01:14:08
擁有一個單獨的文件夾'ViewModels'可以讓管理更容易。只需將'Enrollment'的屬性剪切並粘貼到'EnrollmentVM'中,並根據需要添加新屬性。建議您閱讀[MVC中的視圖模型是什麼](http://stackoverflow.com/questions/11064316/what-is-viewmodel-in-mvc) – 2014-12-07 01:18:03