2014-05-22 55 views
0

enter image description hereASP .NET MVC 4 - 节流的RenderAction CPU

当我打电话的子操作是这样的:

<ul class="media-list" id="newsfeed-container"> 
     @{ 
      foreach (var item in Model) 
      { 
       Html.RenderAction("NewsFeedItem", "Post", 
        new DAL.Models.Post() 
        { 
         ID = item.ID, 
         DateTime = item.DateTime, 
         Message = item.Message, 
         HasPhoto = item.HasPhoto, 
         User = item.User, 
         Photos = item.Photos, 
         IsAllowComment = item.IsAllowComment, 
         IsVisible = item.IsVisible 
        }); 
      } 
     } 
    </ul> 

项目dbContext.Posts.Tolist()(这是数据库中的78条记录)

这是NewsNfeedItem行动

// Display each feed in newsfeed 
    [ChildActionOnly] 
    public ActionResult NewsFeedItem(Post model) 
    { 
     return View(model); 
    } 

当我运行我的应用程序的IIS快递工人Prcess CPU是非常高的。

我该如何解决这个问题?

+0

使用return PartialView(model); –

+0

这是现在的工作.. – user2877989

+0

很高兴你有它的工作,我已经添加了这个答案,所以你可以标记它。 –

回答

0

使用PartialView()

[ChildActionOnly] 
public ActionResult NewsFeedItem(Post model) 
{ 
     return PartialView(model); 
} 
+0

我试过了,但不行。我将检查视图文件中的代码。 – user2877989

0

你有如下修改主视图:

<ul class="media-list" id="newsfeed-container"> 
    @{ 
     foreach (var item in Model) 
     { 
      @Html.Partial("_NewsFeedItemPartialView", item); 
     } 
    } 
</ul> 

,然后你会删除NewsFeedItem行动wbecause这将是不寻常的

但你会必须将您的模型置于您的_NewsFeedItemPartialView视图的顶部,如下所示:

@model namespace.Models.UsedModel