我知道視圖不應該有代碼,但在我正在處理的項目中,我在視圖中有很多邏輯。從ASP.NET MVC的部分視圖中刪除邏輯
我的主頁上有
<% Html.RenderPartial("SearchResults"); %>
現在我有一個aweful很多像這樣的邏輯的局部視圖;
<div id="RestaurantsList">
<%if (Model.restaurantsList.Count() > 0)
{
foreach (var item in Model.restaurantsList)
{ %>
<% Html.RenderPartial("SearchResult", item); %>
<%
} %>
<%
}
else
{
Html.RenderPartial("NoResults");
} %>
現在我可以讓家庭控制器返回基於該列表是空上有不同的看法,但我真的不希望,作爲索引視圖有我想要顯示無論幾件事情如果有結果或沒有。
我能想到的唯一的其他事情就是封裝在一個像Html.SearchResults這樣的輔助方法中。但是之後我需要助手爲每個搜索結果調用renderPartial。這似乎並沒有讓人擔憂。
雖然我仍然必須在部分視圖中擁有第一個if語句。
你最好怎麼處理?
+1總是想知道在這種情況下最佳做法是什麼。 – 2009-06-05 16:28:00