当前位置: 首页 > 知识库问答 >
问题:

.NetStandard 2.0,MongoDB驱动程序:FileNotFoundException for MongoDB。布森

闻人越
2023-03-14

我已经用创建了一个新项目。Net标准2.0,具有以下依赖项:

  • MongoDb.驱动程序
  • MongoDb.司机。核心
  • MongoDb.bson

但是,当我运行程序时,会出现以下错误:

未处理的异常:系统。木卫一。FileNotFoundException:无法加载文件或程序集“MongoDB.Bson,Version=2.7.2.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。系统找不到指定的文件。

我来自Java世界,这让我今天一整天都被难住了。我尝试添加这里指定的所有依赖项,包括驱动程序本身的依赖项,但没有任何运气。

  • 系统。组件模型。类型转换器(

我做错了什么?

共有3个答案

魏臻
2023-03-14

我也遇到了同样的问题,通过右键单击项目并将目标框架从4.6更改为4.6.1,解决了这个问题,它成功了。

伊裕
2023-03-14

我也有同样的问题,在我添加了这些依赖项之后,我的问题得到了解决。

  • MongoDB。布森。dll
  • MongoDB。驾驶员dll
  • MongoDB。驾驶员果心动态链接库
齐永昌
2023-03-14

我创建了一个目标库。NET标准2.0,它使用了mongocsharpdriver包,以及另一个。NET framework 4.6.1项目,该项目反过来使用了库(控制台应用程序)。

构建进行得很顺利,但是运行时出现了FileNotFoundException。

这篇https://github.com/dotnet/standard/issues/410和这篇文章都揭示了这个问题https://www.hanselman.com/blog/ReferencingNETStandardAssembliesFromBothNETCoreAndNETFramework.aspx

基本上,解决方案是在csproj中添加一行对应于控制台应用程序:

我可以打开门。框架项目的csproj文件,并在第一行中添加此行,如下所示以更改还原样式:

再次建造后,MongoDB。*. dll文件被复制到输出文件夹。

希望这有助于节省别人的时间!

 类似资料:
  • 问题内容: 我们当前的连接配置如下所示: 并且已在当前版本(源代码)中弃用,并将被删除:“此方法无法替代。使用connectTimeout属性控制连接超时。” 我认为重试和连接超时是两回事。有谁知道为什么改变了它以及它有什么(内部)含义? 问题答案: 关于autoConnectRetry的含义有很多困惑。大多数人认为这意味着,如果操作由于IOException而失败,驱动程序将重试该操作,直到ma

  • 问题内容: 我想对MongoDB驱动程序作出承诺。我写了以下代码: 您是否知道为什么在调用该方法时为什么没有输出: 问题答案: 手动散布API是很危险的,我建议采取以下措施: 有了Bluebird的承诺,它看起来就像:

  • 服务器上的mongodb版本将比驱动程序版本旧。我的java驱动程序版本是3.6,Mongo-版本显示我是2.4 我该怎么解决这个问题?

  • 驱动程序版本为: 我的问题是,当我使用api find和一些来自java的过滤器时,操作需要15秒。 我检查了mongo服务器日志文件,发现跟踪是一个命令,而不是一个查询: 2015-09-01T12:11:47.496+0200I命令[conn503]命令b.$CMD命令:计数{count:“logs”,查询:{timestamp:{$GTE:新日期(1433109600000)},aplica

  • 我得到一个错误,说名称空间“bsoncxx::v_noabi::builder::basic”没有成员“make_document”,我已经按照教程中提到的添加了required include。 我使用的是mongo-cxx-driver-r3.1.1版本。我从这里开始学习 这是我试过的 请参阅此处图像 我已经对MongoDB驱动程序进行了编译测试,并且运行良好。出于某种原因,我需要使用make

  • 我试图使用servlet上的Java驱动程序连接到托管在mlab上的MongoDB数据库。 问题是我得到以下错误: 这样做对吗?我还应该做什么/代替吗?