1

我在我的 asp.net mvc 项目中有一个视图:

 <div id="featured">
       <% Html.RenderPartial("../Shared/UserControls/RelatedProduct", Model.ProductDetail); %>
 </div>

控制器:

 public ActionResult ProductSpec(int id, int dep, int cat, int tab)
 {
    var pvc = new CMSViewModel()
    {
       ItemDetail = new ProductVM()
       {
          GetItemReference = DataContext.GetItemReferences()
       }
    };
    return View(pvc);
}

这是我的部分观点:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<Web.ModelView.ProductVM>" %>
    <ul class="ui-tabs-nav">
    <%        
        for(int i=0; i<(Model.GetItemReference.Count());i++) {
           //list all item from model
        } 
    %>
    </ul>

问题:当部分视图中的项目为空时,视图将为空白。我想统计View中的部分视图项,所以如果它是空白的,我会用另一个Null Image替换它。

谁能告诉我如何在 View 的部分视图中计算项目。

4

1 回答 1

2

简而言之:在呈现之前检查集合中元素的可用性是个好主意。正确的System.Linq方法是.Any()

这是一个演示该概念的示例:

 <%     
    if(Model.GetItemReference.Any())
    {
       // Render your content
        for(int i=0; i<(Model.GetItemReference.Count());i++) {
           //list all item from model
        }
     }
    else {
     //
     // Render your content when NO Items
    } 
    %>
于 2013-01-03T03:23:31.750 回答