在c#中使用mongodb的强类型查询构建器时,尝试弄清楚如何访问嵌套数组属性。假设我有以下课程:
public class V {
public Guid _id { get; set; }
public List<S> S { get; set; }
}
public class S {
public Guid I { get; set;}
/* other fields */
}
V是文档类型。我想构建一个这样的查询:
var id = Guid.NewGuid();
var query = Query<V>.EQ(v => v.S.I, id);
然而,由于V上的S属性是List,因此无法编译。我希望看到的mongo查询是这样的(实际的guid语法不正确,但左侧是重要的部分:
{ "S.I": "99ebc751-c12a-4873-8c3f-cb510b26a082" }
我该怎么做?
答案 0 :(得分:0)
你需要像Nuk Nuk在你的问题评论中提到的那样做。或者,您可以使用ElemMatch(docs.mongodb.org/manual/reference/operator/elemMatch),这可能更合适。
如果您对我们如何使用类型语法支持此功能提出建议,请提供一些反馈。出于同样的原因,我们正在努力解决如何支持位置($)更新运算符。