如何在LiteDB中的List <>属性上进行分组

时间:2019-06-03 10:58:13

标签: litedb

我有一个以下课程,其中Post可以有很多tags

public class Post
{
  public string Title {get;set;}
  public string Summary {get;set;}
  public List<string> Tags {get;set;}
}

如果一个标签至少具有10个与之关联的Post,我想按tag分组的所有Post

是否可以在LiteDB中使用当前类有效地完成此操作?我愿意接受想法。

1 个答案:

答案 0 :(得分:0)

我不确定这是否是您所需要的。但是也许您的问题比现在更像是

var posts = db.GetCollection<Post>("Post");

其中var是LiteCollection<Post>类型的 并且您不能使用它。

您可以使用.FindAll() or Find()获取IEnumerable,然后使用GroupBy进行分组。 1

var groupedPost = posts.Find(p => p.Tags.Count > 10 ).GroupBy(*Group Condition*);