繁体   English   中英

.NET Standard 2.0 Class 库能否依赖于 .NET Framework 4.7.2?

[英]Can .NET Standard 2.0 Class Library depend on .NET Framework 4.7.2?

在我的一个 .NET 框架项目中,我介绍了一个新的 .NET 标准 2.0 项目。 该项目依赖于一些现有的 .NET 框架项目。 我想知道这样做是否正确。 我添加 .NETStandard 项目的原因是我们计划将整个存储库移动到 .NET Core / Standard。 因此我认为,我们添加的新项目可以针对 .NET 标准。 使用 .NET 标准项目,我默认获得新的 SDK 样式项目文件、package 参考等。

消费应用仍然是 .NET 框架。

Do I have to retarget the new project to .NET Framework 4.7.2 so that the project will have the above SDK style project file and package references but targets .NET Framework 4.7.2 now. 那么当我们迁移到 .NET Core 时,它会像更改目标框架一样简单吗?

取决于您引入 Standard 2.0 项目的目的。 通常,当您需要可以从 .NET Framework 和 Core 访问它时,您会创建一个标准。 在您的情况下,您的标准项目将无法在 macOS 或 Linux 下从 Core 运行。

是的,这是可以做到的。

https://learn.microsoft.com/en-us/dotnet/standard/net-standard?tabs=net-standard-2-0

.NET 框架兼容模式 从 .NET Standard 2.0 开始,引入了 .NET 框架兼容模式。 此兼容模式允许 .NET 标准项目引用 .NET 框架库,就好像它们是为 .NET 标准编译的一样。 引用 .NET 框架库不适用于所有项目,例如使用 Windows Presentation Foundation (WPF) API 的库。

作为某些项目的中间步骤,这是必要的,但为了达到最终目标,您当然必须将 go 全部放在 .net 核心上,这将需要更新这些项目以不使用框架,否则它们将在运行时崩溃。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM