c# - 无法在 Visual Studio Ultimate 2012 上安装 BenchmarkDotNet 0.10.2

标签 c# visual-studio-2012 benchmarkdotnet

我正在尝试将 BenchmarkDotNet 包安装到 Visual Studio 2012 ultimate 上一个全新的空白控制台项目中,但我收到此错误日志:

PM> Install-Package BenchmarkDotNet
Attempting to resolve dependency 'BenchmarkDotNet.Toolchains.Roslyn (≥ 0.10.2)'.
Attempting to resolve dependency 'BenchmarkDotNet.Core (≥ 0.10.2)'.
Attempting to resolve dependency 'System.Threading.Tasks.Extensions (≥ 4.0.0)'.
Attempting to resolve dependency 'Microsoft.CodeAnalysis.CSharp (≥ 1.3.2)'.
Attempting to resolve dependency 'Microsoft.CodeAnalysis.Common (= 1.3.2)'.
Attempting to resolve dependency 'System.Collections.Immutable (≥ 1.1.37)'.
Attempting to resolve dependency 'System.Reflection.Metadata (≥ 1.2.0)'.
Install-Package : 'System.Reflection.Metadata' already has a dependency defined for 'System.Collections.Immutable'.
At line:1 char:1
+ Install-Package BenchmarkDotNet
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], InvalidOperationException
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand

BenchmarkDotNet 看起来非常简单......但它并不适合我!有没有人遇到这个问题,或者在 Visual Studio 2012 上解决了这个问题?

注意:它确实安装在 Visual Studio 2015 Community 中,但这不是我可以用于实际开发的版本。

最佳答案

简答:您只能在 VisualStudio 2015+ 中安装 BenchmarkDotNet。 Visual Studio 2012 使用不支持某些现代包的旧版本 NuGet (2.x)。 BenchmarkDotNet 依赖项之一是 Roslyn ( Microsoft.CodeAnalysis.CSharp ),它需要 NuGet 3.x+。

以下是有关 BenchmarkDotNet 和 Roslyn 存储库中 Visual Studio 最低支持版本的相关讨论:

一个可能的解决方法:您可以在 VS2015/2017 中创建一个新的控制台项目,安装 BenchmarkDotNet 并将整个项目(带有 packages 文件夹)复制到您使用 VS2012 的计算机。

关于c# - 无法在 Visual Studio Ultimate 2012 上安装 BenchmarkDotNet 0.10.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42457338/

相关文章:

c# - BenchmarkDotNet - 如何在类之外注入(inject)参数

benchmarkdotnet - 硬件计数器上的 LLCMisses 和 CacheMisses 之间的差异

c# - 用于单元测试 .net 标准库的框架/visual studio 项目类型?

c# - Asp.net调用C#层调用Managed C++调用Native C++

c# - 如何在源代码管理资源管理器 TFS 2012 中强制手动合并?

visual-studio-2012 - 可以将 Windows Phone 8 Store 测试套件与自定义构建配置一起使用吗?

c# - 了解 C# 中的 Async 和 Await

c# - 是否可以向集合中的类添加方法?

visual-studio - Visual Studio 2012 或 2013 中的 Emacs 键绑定(bind)

c# - 为什么分配的内存比预期的多?