以下情况:我有一个用户列表,每个用户都有一个带有评论列表的字段。
User1: {
...
Id : 'xxxx',
Comment : [{
...
Status : 1
}
,{
...
Status : 0
}]
}
我正在寻找一个Mongo c#查询,它可以选择DB集合中所有用户的状态为1的所有注释。
sry表示英语不好。
thx
假设您有以下类,其中包含集合的序列化值:
public class User1
{
public string Id { get; set; }
public Comment[] Comments { get; set; }
}
public class Comment
{
public int Status { get; set; }
}
那么查询应该是这样的:
var query =
collection.AsQueryable<User1>().SelectMany(user => user.Comments.Where(com=>com.Status == 1));
thx。
我是这样努力的:
var query1 = Query.EQ("Comments.Status", 1)
IEnumerable<Comment> comments = Collection.Distinct<Comment>("Comments", query1).Where(x => x.Status == 1);
comments .toList() // <= list of Comments with Status 1
如果有人有更好的解决方案,请发布。
Thx,
Benjamin