【问题标题】:InsertOne mongodb in .net core does not return result.net核心中的InsertOne mongodb不返回结果
【发布时间】:2020-04-15 23:26:38
【问题描述】:

我是 mongodb 的新手,当我使用 InsertOne 或 InsertMany 方法时,不会返回任何结果。 我怎么能确定数据已插入。 我使用 MongoDB.Driver 版本 2.10.3 对不起我的语言

【问题讨论】:

  • 我有一段时间没有使用 C#,但看起来他们引入了类似于 JavaScript 的 await 运算符。我猜这是你的问题。
  • @Chance 我相信 C# 在被引入 JS 之前已经等待了 :)
  • @mickl 很有趣,我不知道。我真的需要再次研究 C#。当它发布时,我转向 Rails,然后转向 Node。我想我在 3.5/4.0 左右的某个时候离开了 .Net。我记得我真的很怀念 LINQ 引入的 lambda,但 JS 最终得到了它们。

标签: c# mongodb asp.net-core .net-core mongodb-query


【解决方案1】:

您可以检查实现here

基本上,每当出现连接错误或插入违反唯一密钥等问题时,您都会收到MongoWriteException。所以你的代码可能看起来像这样:

try
{
    collection.InsertOne(document);
}
catch (MongoWriteException e)
{
    Console.WriteLine(e.Message);
}

MongoDB 中还有另一种方法 - bulkWrite - 它可能会成功执行某些操作而对其他操作失败。在这种情况下,MongoDB .NET driver 返回一个 BulkWriteResult<TDocument> 类的实例。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-10
    • 1970-01-01
    • 2018-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多