【问题标题】:Is there any quick way to change .net framework projects to .net core projects?有什么快速的方法可以将 .net 框架项目更改为 .net 核心项目?
【发布时间】:2017-08-01 07:37:52
【问题描述】:

我有一个包含 58 个项目的解决方案。 1 mvc 项目和其他项目是 .net 库(.net frameowrk 4.6.2 dll)。 2 个项目有 nuget 包...

有什么快速的方法可以将 .net 框架更改为 .net core 吗?

我的意思是我必须创建新项目并创建 57 个项目(+1 mvc 核心)并在其中添加 cs 文件吗?

注意:我知道,我需要查看一些支持 .net 核心的 nuget 包,我也有很多关于 mvc 核心的工作。

【问题讨论】:

  • 不,将其视为端口。
  • @Faisal 您是否阅读或尝试过那篇文章?它谈到了 project.json...
  • 对于您的类库,您可以尝试以 .NET Standard 为目标。如果您可以将它们重新定位到 .NET Standard 版本,则可以在任何 Core 项目中使用它们。不过,就从 MVC 迁移到 Core 而言,这完全是手动操作。
  • @ChrisPratt 感谢您的评论。也许我理解错了。让我说清楚;因此,如果我将所有项目(不是 mvc)重新定位到 .net 标准,我可以将它们与 .net 框架和 .net 核心项目一起使用吗?很抱歉混淆了东西。我有点困惑。
  • 基本上,是的。 .NET Standard 基本上只是一个 API 足迹。 .NET Standard 有不同的版本,每个版本都逐渐支持更多的 API。所有其他 .NET 系列库、Core、Full Framework、Xamarin 等都实现了某些版本的 .NET Standard,因此您基本上以包含所需 API 占用空间的最低版本为目标。任何版本的 .NET Standard 都适用于 Core 1.X。 Core 2.X 需要 .NET Standard 2.0+。 .NET Framework 4.6.2 至少需要 .NET Standard 1.5。

标签: .net asp.net-mvc asp.net-core .net-core


【解决方案1】:

不幸的是,没有快速从 .NET Framework 迁移到 .NET Core 的方法,我迁移了 4 个项目的中等解决方案,这并不好玩,所有工作都应该手动完成。

如果我们检查docs about porting to .NET Core,没有什么是快速简单的。即使只是列表中的第一项也可能是真正的痛苦,尤其是在大型项目中。

  1. 识别并考虑您的第三方依赖项。

    这将涉及了解您的第三方依赖项 是,您如何依赖它们,如何查看它们是否也在 .NET Core 上运行, 如果他们不这样做,你可以采取的步骤。

API Portability Analyzer tool 提供的帮助很少,但它只是向您展示您的代码库是如何可移植的,但移植过程仍应手动完成。

对于我的迁移,我使用了来自 this discussion on GitHub 的建议方法,并查看了来自 API Portability Analyzer 工具的报告:

  1. dotnet new一个核心模板
  2. 在它构建你的项目之前添加东西
  3. 删除旧的 csproj 文件

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-15
    • 1970-01-01
    • 1970-01-01
    • 2020-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多