【问题标题】:Covert .Net Core Library to .Net Framework Library [closed]将 .Net 核心库隐蔽到 .Net 框架库 [关闭]
【发布时间】:2016-11-11 18:44:41
【问题描述】:

我们以 .Net Core (C#) 开始了一个项目,但很明显,Core 不能向后兼容我们需要的某些包,因此我们需要将 Core 库更改为较旧的 Framework 库。

有没有比简单地将所有代码复制并粘贴到新项目中更简单的方法?

【问题讨论】:

  • “核心不向后兼容我们需要的某些包”?如何?奇怪的是你必须这样做。
  • @LexLi 尝试通过 Nuget 添加的多个包(不是全部)抱怨它们与核心不兼容。
  • 这很公平。您尝试将 .NET Framework 目标程序集添加为 .NET Core 项目中的引用,但目前确实失败了。 .NET 团队正在为此努力,希望 .NET Standard 2.0 可以帮助blogs.msdn.microsoft.com/dotnet/2016/09/26/… 如果您确实需要立即采取行动,除了复制项目周围的文件之外,我想不出什么了。
  • 我投票结束这个问题,因为它已有 5 年历史,并且问题中提到的问题早已由社区处理。

标签: c# .net .net-core buildconfiguration


【解决方案1】:

Net Core 与 Net Framework 根本不同,并且不直接兼容。引入网络标准是为了尝试减轻这种负担,但后来被抛弃了。您需要在 Net Framework 或 Net Core 之间做出决定。如果是 Net Core,则需要将旧库替换为与 Net Core 兼容的版本。没有“解决办法”

【讨论】:

  • 鉴于问题日期为 2016 年,该答案与问题无关。 NetStandard 并没有完全被抛弃,但无论如何 - WAS 引入的是多目标,它与新项目一起出现,并且大大推迟了问题。
  • 问题的日期无关紧要。答案仍然有效且正确。从微软的角度来看,Net Standard 有点贬值,因为他们不想继续支持它,它只是作为让人们转向 Net Core 的权宜之计