2sxc:Linq计算每个标签有多少帖子

时间:2018-07-25 13:37:53

标签: dotnetnuke 2sxc

我想实现一个自动的tagcloud,所以我需要有一个不同标签的列表,每个标签的博客帖子数。

基本上使用2sxc博客文章的结构

"Posts": [
{
  "Title": "xxx",
  "KeyURL": "xxx",.......
  "Tags": [
    {
      "Id": 1,
      "Title": "A"
    },
    {
      "Id": 2,
      "Title": "B"
    },....
  ]
},
{
  "Title": "yyy",
  "KeyURL": "yyy",.......
  "Tags": [
    {
      "Id": 1,
      "Title": "A"
    },....
  ]
}
]

我可以使用以下代码获取所有帖子

var posts = AsDynamic(Data["Posts"]);

然后,我尝试获取所有标签和每个标签的计数,但我无法找到错误的地方。

var result = postsToShow.SelectMany(x => x.Tags)
               .GroupBy(x => x)
               .Select(x => new
                          {
                              Tag = x.Key,
                              PostCount = x.Count()
                         });

我只想得到一张清单

Tagname: A Count 2
Tagname: B Count 1

0 个答案:

没有答案