【问题标题】:Upgrade xUnit project to .NET Core 2.1.1将 xUnit 项目升级到 .NET Core 2.1.1
【发布时间】:2018-11-20 03:51:57
【问题描述】:

我有带有 Microsoft.AspNetCore.App 版本 2.1.1 的 ASP.NET Api 应用程序 和 xUnit 测试与 Microsoft.NETCore.App 版本 2.1.0

我添加了从 Api 项目中引用的 xUnit 测试应用程序。 由于版本差异(2.1.1 和 2.1.0),解决方案在构建时会出错。

错误:

错误 CS1705
具有标识“Customer.API,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”的程序集“Customer.API”使用“Microsoft.AspNetCore.Mvc.Core,Version=2.1.1.0,Culture=neutral,PublicKeyToken=adb9793829ddae60 ' 它的版本比引用的程序集 'Microsoft.AspNetCore.Mvc.Core' 的版本更高,标识为 'Microsoft.AspNetCore.Mvc.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'

问题是:如何在我的测试项目中升级 Microsoft.AspNetCore.App。

PS:从 Nuget Manager 无法更改版本或更新(在测试项目中)

【问题讨论】:

    标签: .net-core xunit


    【解决方案1】:

    右键单击解决方案。转到 用于解决方案的 NuGet 包 单击 Microsoft.AspNetCore.App,然后在右侧面板单击 xUnit 测试项目的复选框,然后将版本更改为 2.1.1 并安装。

    再次构建。

    在我的情况下解决了

    【讨论】:

      【解决方案2】:

      接受的答案将解决问题。只是为了添加更多关于真正导致此问题的背景:

      此问题是由于为 Microsoft.AspNetCore.App 元包引入的隐式版本控制。通过隐式版本控制,sdk 决定版本并将其解析为 2.1.1

      但是,对于 nunit 测试项目,它正在解析为 2.1 版。指定 nunit 项目的版本号并执行 dotnet restore 有助于解决此问题。

      在 github 上有针对此问题的票证,这种关于隐式版本控制的行为将来可能会改变 - https://github.com/aspnet/AspNetCore.Docs/issues/6430https://github.com/dotnet/core/blob/master/release-notes/1.0/sdk/1.0-rc3-implicit-package-refs.md

      【讨论】:

        猜你喜欢
        • 2021-10-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-13
        • 2018-04-09
        • 1970-01-01
        • 1970-01-01
        • 2018-08-03
        相关资源
        最近更新 更多