2015-05-04 103 views
0

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

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。检查包的 其他依赖项,这些依赖项可能会附带自己的许可证 协议。您使用软件包和依赖关系构成您接受其许可协议的 。如果您不接受 许可协议,请从您的 设备中删除相关组件。成功安装'MongoDB.Bson 2.0.0'。您是 从MongoDB,Inc.下载MongoDB.Driver.Core,许可证 协议可在 http://www.apache.org/licenses/LICENSE-2.0。检查包的 其他依赖项,这些依赖项可能会附带自己的许可证 协议。您使用软件包和依赖关系构成您接受其许可协议的 。如果您不接受 许可协议,请从您的 设备中删除相关组件。成功安装'MongoDB.Driver.Core 2.0.0'。您是 从MongoDB,Inc.下载MongoDB.Driver,许可协议 ,其中http://www.apache.org/licenses/LICENSE-2.0可用。 检查软件包是否有其他依赖关系,这些依赖关系可能与 自己的许可协议一起提供。您使用该软件包和 依赖项构成您接受其许可协议。 如果您不接受许可协议,请从设备中删除 相关组件。成功安装 'MongoDB.Driver 2.0.0'。您正在从 MongoDB,Inc.下载mongocsharpdriver,该许可协议可从 http://www.apache.org/licenses/LICENSE-2.0获取。检查包的 其他依赖项,这些依赖项可能会附带自己的许可证 协议。您使用软件包和依赖关系构成您接受其许可协议的 。如果您不接受 许可协议,请从您的 设备中删除相关组件。成功安装'mongocsharpdriver 2.0.0'。 安装包:无法找到与目标框架“.NETFramework,Version = v4.0”兼容的 的程序集引用。在 行:1个字符:16 +安装-封装< < < < mongocsharpdriver + CategoryInfo:NotSpecified:(:) [安装封装],出现InvalidOperationException + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands。InstallPackageCommand

更新:

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

安装失败。回滚...安装包:无法安装 包'MongoDB.Bson 2.0.0'。您正试图将此包 安装到以'.NETFramework,Verion = v4.0'为目标的项目中,但 程序包不包含任何与该框架兼容的程序集引用或内容文件。欲了解更多信息,请致电 软件包作者。在行:1个字符:16 +安装封装< < < < mongocsharpdriver + CategoryInfo:NotSpecified:(:) [安装封装],出现InvalidOperationException + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

回答

0

这些是依赖关系:

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

我试着先安装MongoDB.Bson。这也给了我已经安装的错误''MongoDB.Bson 2.0.0'Install-Package:无法找到与目标框架'.NETFramework,Version = v4.0'兼容的程序集引用。 在行:1个字符:16 +安装-封装<<<< MongoDB.Bson + CategoryInfo:NotSpecified:(:) [安装封装],出现InvalidOperationException + FullyQualifiedErrorId:NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand – KurioZ7

+0

尝试其他的。 MongoDB.Driver –

+0

我也尝试过'MongoDB.driver''MongoDB.Bson'和'MongoDB.Driver.Core'。所有顺序都不一样,但每次看到相同的错误。 (奇怪的是看到消息'..已经安装..'。我没有看到任何包!) – KurioZ7

3

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

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

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

分辨率:

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

安装包mongocsharpdriver -Version 1.0.0

+0

获取VS社区版2013,以便您可以使用.Net 4.5 [这里](https://www.visualstudio.com/en-us/products/visual-studio-community-vs.aspx)。它为您免费提供以前VS专业版的所有内容。 – unaligned

相关问题