我使用.Net标准2.0创建了一个新项目,其依赖项如下:
但是,当我运行我的程序时,我会得到以下错误:
未处理的异常: System.IO.FileNotFoundException: Coult文件或程序集"MongoDB.Bson,Version=2.7.2.0,Culture=neutral,PublicKeyToken=null“或其依赖项之一。系统找不到指定的文件。
我来自Java世界,这让我今天一整天都很困惑。我尝试添加所有指定的这里依赖项,包括驱动程序本身的依赖项,但没有任何结果。
我做错了什么?
发布于 2019-01-21 08:09:38
我创建了一个以.NET标准2.0为目标的库,该库使用了Mongoc神利驱动程序包,并创建了另一个.NET框架4.6.1项目,该项目反过来使用了这个库(控制台应用程序)。
构建进行得很好,但是运行时有一个FileNotFoundException。
这个线程https://github.com/dotnet/standard/issues/410和本文都说明了https://www.hanselman.com/blog/ReferencingNETStandardAssembliesFromBothNETCoreAndNETFramework.aspx问题。
基本上,解决方案是向csproj添加与控制台应用程序相对应的一行:
我可以打开框架项目的.csproj文件,并在第一行中添加这一行,如以下所示,以更改还原样式:
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
在再次构建之后,MongoDB.*.dll文件被复制到输出文件夹。
希望这能帮助和节省别人的时间!
发布于 2019-04-04 09:07:28
我也有同样的问题,通过右键单击项目并将Target框架从4.6更改为4.6.1,就可以解决这个问题。
发布于 2019-01-21 07:55:03
我也遇到了同样的问题,在我添加了这些依赖项之后,我的问题就解决了。
https://stackoverflow.com/questions/53565680
复制