首页 > 解决方案 > 来自 MongoDB C# API 的 InsertMany 不返回已确认

问题描述

根据MongoDB C# 驱动程序中的文档和代码方法,不返回任何内容。IMongoCollection.InsertMany这很奇怪,因为例如DeleteMany返回DeleteResult信息。即使InsertManyShell 方法返回带有 Acknowledged 等的信息(参见此处)。

它的原因是什么?最重要的问题:如何快速(不牺牲性能)获得InsertMany正确完成的确认(Acknowledged == true)?

标签: c#mongodbmongodb-.net-driver

解决方案


如果您查看 API 文档(http://mongodb.github.io/mongo-csharp-driver/2.7/apidocs/html/M_MongoDB_Driver_IMongoCollection_1_InsertMany_1.htm),则 InsertMany 似乎是一个 void 方法,因此它什么也不返回。

它是基于异常的语义:如果它没有错误地完成,那么您确定您的所有文档都已成功插入


推荐阅读