要求是"查找具有给定标记的所有帖子(如果存在)。否则,返回所有帖子"。我尝试以下
[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);
}
我的问题是如何在不匹配时检索所有文件? 感谢,
答案 0 :(得分:1)
我明白了。
var posts = await blogContext.Posts.Find(x => (string.IsNullOrEmpty(tag) || x.Tags.Contains(tag))).Sort(Builders<Post>.Sort.Descending("CreatedAtUtc")).ToListAsync();