我在我的应用程序中使用MongoDb C#驱动程序,我需要更新文档中的子项。我找到了这样做的方式:
var query = Query<User>.ElemMatch(_=>_.Item, qb=>qb.EQ(x => x.Valid,false));
var update = Update.Set("Item.$.Valid", true); <-- can I use lambda here?
var result = collection.Update(query, update);
现在我想问你:我可以使用lambda语法删除固定字符串"Item.$.Valid"
以启用编译时检查(如Update<Item>.Set(x=>x...
)吗?
内部驱动程序源代码我没有发现任何相关信息!
答案 0 :(得分:2)
现在不行。这是它的JIRA票。 https://jira.mongodb.org/browse/CSHARP-588
为此提供良好的语法而不会使所有辅助方法加倍是很困难的。我们对建议完全开放,所以如果你有一些建议,请评论JIRA票。