【发布时间】:2017-04-26 16:00:53
【问题描述】:
我正在尝试使用 C# Interactive 尝试一些 mongodb 驱动程序,但是当我尝试创建 MongoClient 时,我得到以下异常:
> var client = new MongoClient();
Could not load file or assembly 'System.Runtime.InteropServices.RuntimeInformation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
+ MongoDB.Driver.Core.Connections.ClientDocumentHelper.CreateOSDocument()
+ Lazy<T>.CreateValue()
+ Lazy<T>.get_Value()
+ MongoDB.Driver.Core.Connections.ClientDocumentHelper.CreateClientDocument(string)
+ MongoDB.Driver.Core.Connections.BinaryConnectionFactory..ctor(MongoDB.Driver.Core.Configuration.ConnectionSettings, MongoDB.Driver.Core.Connections.IStreamFactory, MongoDB.Driver.Core.Events.IEventSubscriber)
+ MongoDB.Driver.Core.Configuration.ClusterBuilder.BuildCluster()
+ MongoDB.Driver.ClusterRegistry.CreateCluster(MongoDB.Driver.ClusterKey)
+ MongoDB.Driver.ClusterRegistry.GetOrCreateCluster(MongoDB.Driver.ClusterKey)
+ MongoDB.Driver.MongoClient..ctor(MongoDB.Driver.MongoClientSettings)
+ MongoDB.Driver.MongoClient..ctor()
这里是复制的全部细节:-
通过命令行安装最新版本的MongoDB驱动。
C:\dev>nuget.exe install MongoDB.Driver -OutputDirectory tools -ExcludeVersion
Feeds used:
https://api.nuget.org/v3/index.json
C:\Program Files (x86)\Microsoft SDKs\NuGetPackages\
C:\Program Files\Microsoft SDKs\Service Fabric\packages\
Attempting to gather dependencies information for package 'MongoDB.Driver.2.4.3' with respect to project 'tools', targeting 'Any,Version=v0.0'
Attempting to resolve dependencies for package 'MongoDB.Driver.2.4.3' with DependencyBehavior 'Lowest'
Resolving actions to install package 'MongoDB.Driver.2.4.3'
Resolved actions to install package 'MongoDB.Driver.2.4.3'
Adding package 'MongoDB.Bson.2.4.3' to folder 'C:\dev\tools'
Added package 'MongoDB.Bson.2.4.3' to folder 'C:\dev\tools'
Successfully installed 'MongoDB.Bson 2.4.3' to tools
Adding package 'System.Runtime.InteropServices.RuntimeInformation.4.0.0' to folder 'C:\dev\tools'
Added package 'System.Runtime.InteropServices.RuntimeInformation.4.0.0' to folder 'C:\dev\tools'
Successfully installed 'System.Runtime.InteropServices.RuntimeInformation 4.0.0' to tools
Adding package 'MongoDB.Driver.Core.2.4.3' to folder 'C:\dev\tools'
Added package 'MongoDB.Driver.Core.2.4.3' to folder 'C:\dev\tools'
Successfully installed 'MongoDB.Driver.Core 2.4.3' to tools
Adding package 'MongoDB.Driver.2.4.3' to folder 'C:\dev\tools'
Added package 'MongoDB.Driver.2.4.3' to folder 'C:\dev\tools'
Successfully installed 'MongoDB.Driver 2.4.3' to tools
打开 C# 交互窗口并导入 dll
Microsoft (R) Roslyn C# Compiler version 2.0.0.61501
Loading context from 'CSharpInteractive.rsp'.
Type "#help" for more information.
> #r "c:\dev\tools\MongoDB.Driver\lib\net45\MongoDB.Driver.dll"
> #r "c:\dev\tools\MongoDB.Bson\lib\net45\MongoDB.Bson.dll"
> #r "c:\dev\tools\MongoDB.Driver.Core\lib\net45\MongoDB.Driver.Core.dll"
> #r "c:\dev\tools\System.Runtime.InteropServices.RuntimeInformation\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll"
然后尝试创建MongoClient
> var client = new MongoClient();
Could not load file or assembly 'System.Runtime.InteropServices.RuntimeInformation, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
+ MongoDB.Driver.Core.Connections.ClientDocumentHelper.CreateOSDocument()
+ Lazy<T>.CreateValue()
【问题讨论】:
-
我没有你的答案,但我已经与类似的守护进程进行了战斗。 Fusion logging 是您的朋友:1) hanselman.com/blog/… 2) docs.microsoft.com/en-us/dotnet/framework/tools/…
标签: c# mongodb mongodb-.net-driver c#-interactive