public ActionResult Index()
{
List<pInfo> pobj = new List<pInfo>();
pobj = (from pid in db.pInfoes
orderby pid.pId descending
select pid).ToList();
return View(pobj);
}
public ActionResult toprank() ///partial view
{
List<pInfo> pobj = new List<pInfo>();
pobj = (from pid in db.pInfoes.Where(c => c.DateCreated < DateTime.Now)
orderby pid.Score descending
select pid).Take(3).ToList();
return PartialView("toprank", pobj);
}
\\\ Index.csHtml
@model IEnumerable<TestProj.pInfo>
<table>
<tr>
<td>
@foreach (var item in Model)
{
<table>
<tr>
<td>
<iframe width="560"
height="300"
src="@item.pUrl"
frameborder="0"></iframe>
</td>
</tr>
</table>
}
</td>
<td>
@{Html.RenderPartial("toprank", model);}
</td>
</tr>
</table>
我正在为同一模型传递不同的结果集,即 pInfo。在 Home Controller 上的部分视图和 Index actionresult 上。当我尝试在索引视图页面上呈现部分视图时,我从索引操作结果中获得了相同的结果集两次,一次在表中,另一次在 @{Html.RenderPartial("toprank", model); } ...我确信我对局部视图的工作原理有一些基本的了解,但在过去 3 小时内无法弄清楚。如果我将 url 更改为部分视图,即(home/toprank),那么我会得到我想要的结果集,但它不会出现在 Home/Index 页面上
如果我的设计概念有误,请告诉我。我开始觉得这可能是让这个工作的错误方法。