我正在尝试使用下面的代码找出集合中是否存在文档。每当查询未找到任何文档时,我都会收到 StackOverflowException。我做错了什么?
MongoServer server = MongoServer.Create(connectionString);
MongoDatabase db = server.GetDatabase(database);
MongoCollection<Document> documents = db.GetCollection<Document>("Documents");
var query = Query.EQ("DocID", doc.DocID);
var result = documents.FindOneAs<Document>(query);
if (result != null)
{
doc.Id = result.Id;
doc.DocCreated = result.DocCreated;
doc.DocCreatedBy = result.DocCreatedBy;
doc.MergeFiles(result);
documents.Save(doc);
}
else
{
doc.Save();
}
我也在使用官方的 mongodb c# 驱动程序。
编辑: 这是堆栈跟踪。真的不多说了。
System.dll 中出现“System.StackOverflowException”类型的未处理异常无法计算表达式,因为当前线程处于堆栈溢出状态。
编辑 2: 这是我的文档类的链接。 https://gist.github.com/68d38bec41ebc46f30eb