如何在Visual Studio 2013中安装MongoDB.Driver。

3

我正在使用 Visual Studio Ultimate 2013 在我的项目(.NET Framework 4.6)中安装 MongoDB.Driver 包,但是遇到了以下错误:

无效的静态方法调用语法:"[MSBuild]::IsOsPlatform('Windows')"。未找到方法"[MSBuild]::IsOsPlatform"。静态方法调用应该采用以下形式:$([FullTypeName]::Method()),例如$([System.IO.Path]::Combine(a, b))。
C:\ProjectPath\packages\MongoDB.Libmongocrypt.1.0.0\build\MongoDB.Libmongocrypt.targets

我尝试在其他项目中安装并尝试修复 Visual Studio,但没有成功。


仍然在使用VS 2019... net4.8项目时遇到此问题。不知道发生了什么。下面的解决方案都不起作用。 - JHBonarius
3个回答

1

分享我的经验:

2020年1月6日 07:27:40

当我使用时

Install-Package MongoDB.Driver

在我的项目(.NET Framework 4.6.1)中,
包管理器控制台输出:

无效的静态方法调用语法:“[MSBuild] :: IsOsPlatform('Windows')”。未找到方法“[MSBuild] :: IsOsPlatform”。

我刚刚重启了我的vs2015,我尝试通过以下方式安装此程序包:
Install-Package MongoDB.Driver -Version 2.5.0

我成功了!

1
在项目文件中添加了条件检查。您可以删除该错误条件,然后构建应该就可以正常工作了。
</PropertyGroup>
    <Error Condition="!Exists('..\packages\MongoDB.Libmongocrypt.1.0.0\build\MongoDB.Libmongocrypt.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\MongoDB.Libmongocrypt.1.0.0\build\MongoDB.Libmongocrypt.targets'))" />
  </Target>

将项目文件中的条件删除后,然后工作正常。

 <!--<Import Project="..\packages\MongoDB.Libmongocrypt.1.0.0\build\MongoDB.Libmongocrypt.targets" Condition="Exists('..\packages\MongoDB.Libmongocrypt.1.0.0\build\MongoDB.Libmongocrypt.targets')" />-->

我删除了导入和目标部分,这样就可以了。 - RickWeb
错误不会在构建过程中发生,而是在您尝试从软件包管理器安装时发生。 - Carlos Siestrup

0

看起来最新版本的MongoDB.Driver(版本2.10)无法在Visual Studio 2013中安装,因此解决方案是安装先前与Visual Studio 2013兼容的版本。在这种情况下,最新兼容的版本是2.9.3。

我不得不使用以下命令在包管理器控制台中安装先前的版本:

Install-Package MongoDB.Driver -Version 2.9.3

为了打开包管理器控制台,您需要转到:

工具 > NuGet程序包管理器 > 包管理器控制台


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接