c#mongodb使用列表的给定项查找所有文档。否则返回所有文件

时间:2015-04-06 21:34:00

标签: c# mongodb mongodb-.net-driver

要求是"查找具有给定标记的所有帖子(如果存在)。否则,返回所有帖子"。我尝试以下

[HttpGet]
public async Task<ActionResult> Posts(string tag = null)
{
    var blogContext = new BlogContext();
    var posts = await blogContext.Posts.Find(Builders<Post>.Filter.AnyEq(x => x.Tags, tag)   )
                     .Sort(Builders<Post>.Sort.Descending("CreatedAtUtc")).ToListAsync();

    return View(posts);
}

我的问题是如何在不匹配时检索所有文件? 感谢,

1 个答案:

答案 0 :(得分:1)

我明白了。

    var posts = await blogContext.Posts.Find(x => (string.IsNullOrEmpty(tag) || x.Tags.Contains(tag))).Sort(Builders<Post>.Sort.Descending("CreatedAtUtc")).ToListAsync();