【发布时间】:2019-05-14 20:59:25
【问题描述】:
使用 Visual Studio 2017 Enterprise,我正在尝试将单元测试项目的目标框架更改为 .NET Core,以便我可以使用 xUnit。我在可用框架列表中没有看到它。
在我的可用框架列表中,我看到:
.NET Framework 2.0 -> 4.7.1 and several Unity Frameworks.
尽管我安装了 .NET Core SDK 2.1.200 (x64)、2.1.202 (x64) 和 2.1.500 (x64),但还是这样。
【问题讨论】:
-
如果它是一个针对 .NET Framework 的项目,我认为您无法选择将其更改为 .NET Core 或 .NET Standard,因为它并不那么简单。您需要创建一个新项目或手动编辑 .csproj 文件以进行转换。
-
@Eric:您是否尝试过创建 Visual C#->.NET Core->xUnit Test Project (.NET Core) 项目?
-
Target Framework属性仅显示支持的转化。您不能仅通过更改目标框架来从 4.7.1 更改为 .NET Core。项目文件格式本身是不同的。有几篇文章和重复的问题解释了如何手动将一种格式转换为另一种格式,尽管最好的选择可能是从一个新项目开始,然后复制源文件 -
@PanagiotisKanavos,有些对话不一定会导致问题,但仍然没有显示。例如,我刚刚通过编辑项目文件将一个项目从 .NET Standard 2.0 转换为 .NET Core 3.0(如下 Jimmy 所述),没有出现任何问题。我认为它并不能保证工作,但它可以比创建一个新项目并转移所有内容要快得多。
-
@RyanLundy 这并不意味着 Visual Studio 支持更改。任何问题都是专门针对通过下拉菜单将 4.7.1 更改为 .NET Core 3.0 的,这需要将项目文件更改为新格式并清理瞬态包依赖项。这就是new try-convert tool 所做的
标签: c# .net visual-studio .net-core visual-studio-2017