gpt4 book ai didi

c# - 批量保存到 MongoDB C# 驱动程序

转载 作者:可可西里 更新时间:2023-11-01 10:04:58 24 4
gpt4 key购买 nike

我在使用 C# 驱动程序批量保存 MongoDB 文档时遇到困难。下面是插入带有 GUID BsonID 的文档的示例代码。一次保存一个有效。如果我将文档插入列表并使用保存命令,它会失败并显示“保存只能用于具有 Id 的文档。” 错误。有什么想法吗?

var autolookuplist = new List<BsonDocument>();
Parallel.ForEach(docs, webdoc =>
{
lock (autolookuplist)
{
autoID++;
var hold = new APAUtoIDGuidLookup() {AutoIncrementID = autoID, ID = webdoc.ID};
autolookuplist.Add(hold.ToBsonDocument());
}

//this works
// idcollection.Save(new APAUtoIDGuidLookup() { AutoIncrementID = autoID, ID = webdoc.ID });
});


//this doesn't work
idcollection.Save(autolookuplist);

这是文档类

public class  APAUtoIDGuidLookup
{
[BsonId]
public Guid ID { get; set; }
public int AutoIncrementID { get; set; }
}

更新:MongoDB好像不支持批量更新

最佳答案

您不能进行批量保存,但可以进行批量插入。

idcollection.InsertBatch(autolookuplist);

关于c# - 批量保存到 MongoDB C# 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16659947/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com