我在应用程序中使用 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...
)?
在驱动程序源代码中我没有发现任何相关内容!
最佳答案
现在不行。这是它的 JIRA 票证。 https://jira.mongodb.org/browse/CSHARP-588
在不增加所有辅助方法的情况下为此想出一个好的语法是很困难的。我们完全愿意接受建议,因此如果您有任何建议,请在 JIRA 票证上发表评论。
关于c# - MongoDb 驱动程序中的 Lambda 语法用于更新文档中的数组元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26651965/