无法在Visual Studio 2010中为C#安装Mongo DB驱动器

时间:2015-05-04 08:59:31

标签: mongodb wcf

我正在使用Visual Studio 2010.我正在尝试通过NuGet'软件包管理器控制台安装MongoDB驱动程序。当我输入命令' Install-Package mongocsharpdriver' 时,我收到以下消息和错误。 (请阅读我为实际错误消息粘贴的消息的最后几行)。我在互联网上找不到与此相关的任何具体内容。有人可以帮我确定这个问题的原因。我正在WCF服务解决方案中执行上述命令。

  

PM>安装包mongocsharpdriver' MongoDB.Bson(≥2.0.0)'不   安装。试图从源检索依赖...完成。   ' MongoDB.Driver.Core(≥2.0.0)'未安装。试图检索   源自依赖...完成。 ' MongoDB.Driver(≥2.0.0)'不   安装。试图从源检索依赖...完成。您   正在从许可证MongoDB,Inc。下载MongoDB.Bson   协议可在以下处获得   http://www.apache.org/licenses/LICENSE-2.0。检查包裹   其他依赖项,可能带有自己的许可证   协议(S)。您对包和依赖项的使用构成   您接受他们的许可协议。如果你不接受   许可协议,然后删除您的相关组件   设备。已成功安装MongoDB.Bson 2.0.0'。你是   从MongoDB,Inc。下载MongoDB.Driver.Core,许可证   协议可在以下处获得   http://www.apache.org/licenses/LICENSE-2.0。检查包裹   其他依赖项,可能带有自己的许可证   协议(S)。您对包和依赖项的使用构成   您接受他们的许可协议。如果你不接受   许可协议,然后删除您的相关组件   设备。已成功安装MongoDB.Driver.Core 2.0.0'。你是   从MongoDB,Inc。下载MongoDB.Driver,许可协议   可在http://www.apache.org/licenses/LICENSE-2.0获得。   检查包是否有其他依赖关系   他们自己的许可协议。你使用的包和   依赖性构成您接受其许可协议。   如果您不接受许可协议,则删除   您设备的相关组件。成功安装   ' MongoDB.Driver 2.0.0'。您正在从中下载mongocsharpdriver   MongoDB,Inc。,可在的许可协议   http://www.apache.org/licenses/LICENSE-2.0。检查包裹   其他依赖项,可能带有自己的许可证   协议(S)。您对包和依赖项的使用构成   您接受他们的许可协议。如果你不接受   许可协议,然后删除您的相关组件   设备。已成功安装' mongocsharpdriver 2.0.0'。   Install-Package:无法找到的程序集引用   兼容目标框架' .NETFramework,Version = v4.0'。在   line:1 char:16   + Install-Package<<<< mongocsharpdriver       + CategoryInfo:NotSpecified:(:) [Install-Package],InvalidOperationException       + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

更新

我意识到NuGet包的版本已经过时了,所以我安装了最新的版本(版本2.8.60318.667)。我在安装新版本的NuGet后尝试安装驱动程序,但收到相同的错误消息。我只是粘贴下面的错误部分。值得注意的是,错误消息表明该包与.NET framework 4.0不兼容。我尝试过.NET framework 3.5和3.0,但是我收到了类似的错误消息。

  

安装失败。回滚...安装包:无法安装   包' MongoDB.Bson 2.0.0'。您正在尝试安装此软件包   进入一个针对.NETFramework,Ver sion = v4.0'的项目,但是   包不包含任何程序集引用或内容文件   与该框架兼容。有关更多信息,请联系   包裹作者。在行:1字符:16   + install-package<<<< mongocsharpdriver       + CategoryInfo:NotSpecified:(:) [Install-Package],InvalidOperationException       + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

2 个答案:

答案 0 :(得分:4)

我已经理解了这个问题和解决方案的原因。问题是我正在尝试安装的Mongodb C#驱动程序的版本。 .NET Framework 4.0不支持最新版本的MongoDB C#驱动程序(版本2.0)。我从以下链接了解了受支持的.NET版本。

http://docs.mongodb.org/ecosystem/drivers/csharp/

2.0版驱动程序仅支持.NET framework 4.5。出于同样奇怪的原因,Microsoft Visual Studio 2010没有.NET 4.5版本支持(我很震惊!)。

解决:

我通过执行以下命令安装了MongodB C#驱动程序版本1.10。这次没有问题,驱动程序安装顺利。

Install-Package mongocsharpdriver -Version 1.0.0

答案 1 :(得分:0)

这些是依赖项:

  1. MongoDB.Bson(≥2.0.0)
  2. MongoDB.Driver.Core(≥2.0.0)
  3. MongoDB.Driver(≥2.0.0)