使用C#从MongoDB中删除文档中的元素

3
我有一个 MongoDB,所有文档都具有以下结构:
{
"_id" : ObjectId("522489bdfc346a1464659634"),
"Flash_point" : 105,
"Boiling_point" : 112,
"Melting_point" : 41}

我不知道如何在C#中删除文档中的“Flash_point”元素。
之后,文档应该看起来像这样:
{
"_id" : ObjectId("522489bdfc346a1464659634"),
"Boiling_point" : 112,
"Melting_point" : 41}

非常感谢!

您想要删除集合中所有Flash_point的实例,还是只删除某些情况下的实例? - Jedediah
在某些情况下,我有一些要删除的 _id。目前,这些 _id 在一个列表中。 - wuyts
1
@neoistheone 这不是那个问题的重复。这个问题是指删除单个属性与整个文档的区别。 - ddavison
1
@neoistheone:不,我的问题是关于从文档中删除一个元素,而不是从集合中删除一个文档。 - wuyts
1个回答

1

在网上搜索了一段时间后,我自己找到了解决方案。

对于那些想知道我的解决方案的人:

for (int j = 0 ; j < idlist.Count ; j++)
{
    var queryDeleteValue = new QueryDocument("_id", idlist[j]);
    var update = Update.Unset("Flash_point");
    collectionInput.Update(queryDeleteValue, update);
}

首先,我有一个查询变量来选择正确的文档。然后我创建一个更新变量,在其中取消设置元素'Flash_point'。 最后一步是执行实际的更新(使用参数'queryDeleteValue'和'update')。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接