【发布时间】:2017-08-13 17:00:23
【问题描述】:
我在 Umbraco v6.2.4 中使用部分视图来提取相关文章列表。下面的脚本完美运行,并使用“Refactored.Umbraco.MVCExtensions”来提取文章的查看次数。到目前为止一切顺利,但我想按最受欢迎的文章(即基于查看次数)对文章列表进行排序/排序。但是,视图计数不是 Umbraco 模型的一部分,所以我不知道如何基于此对列表进行排序/排序,或者是否有其他方法?
@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@using Refactored.UmbracoViewCounter
@{
var articles = Model.Content.AncestorOrSelf(4).Children.Where(x => x.IsVisible()).OrderBy("articleCategory, articleDate desc");
int pagerank = 1;
string elementId;
<div>
<p class="h3">Most Popular</p>
@foreach (var item in articles.Take(6))
{
elementId = "content_" + pagerank.ToString();
<div class="items @elementId">
<span class="pagerank">@pagerank</span>
<a href="@item.Url">
<p>@(item.GetPropertyValue<string>("title"))</p>
</a>
<span class="views-counter"> @ViewCount.GetViewCount(item.Id, category: "articles", increment: false)</span>
</div>
pagerank = pagerank + 1;
}
</div>
}
【问题讨论】:
-
您能告诉我们您是如何存储观看次数的吗?
-
查看次数存储在 Umbraco 数据库中名为“dbo.refViewCount”的表中。该表包含 id、nodeId、count、lastViewed 和 category。
标签: asp.net-mvc razor umbraco partial-views