针对 .NET Core 与 .NET Standard

Posted

技术标签:

【中文标题】针对 .NET Core 与 .NET Standard【英文标题】:Targeting .NET Core vs .NET Standard 【发布时间】:2017-06-24 15:00:22 【问题描述】:

我们有一个在 Windows 上运行的服务器端“经典”WCF .NET 应用程序。去年,我们使用 Mono 和 Web-Api 替代 WCF 添加了 Linux 支持。 检查与 Api-Port 工具的兼容性,我们发现我们只需要针对 .NET Core 而不是 .NET Standard 进行少量更改。

所以对于像我们这样的服务器端应用程序,它只能在 Windows 和 Linux 上运行,是否可以说以 .NET Standard 为目标没有任何意义?

【问题讨论】:

你确定吗? .Net Core 1.x/2.0 中支持的 API 很少,但 .Net Standard 1.x/2.0 中不支持,其中大多数不是兼容性 API。您能否列出您正在谈论的一些 API? 【参考方案1】:

对于面向 .NET Core 的服务器端应用程序就足够了。

这里有详细解答:What is the difference between .NET Core and .NET Standard Class Library project types?

【讨论】:

好的,谢谢,这是有道理的。现在(是的,这可能是另一个问题......)现在当我创建一个 .NET core 2.0 库(VS2017 Preview 2.1)时,当我看到项目目标时,它显示“.NET Standard 2.0)并且我不能选择 .NET Core .NET Standard 用于 .NET Framework 和 .NET Core 可以使用的类库,而 .NET Core 2.0 用于应用程序 我的意思是,如果一个库已知被 .NET Core 应用程序使用,那么构建仅针对 .NET Core 的库是完全可以的。

以上是关于针对 .NET Core 与 .NET Standard的主要内容,如果未能解决你的问题,请参考以下文章

《ASP.NET Core 6框架揭秘》实例演示[16]:内存缓存与分布式缓存的使用

当前的 .Net SDK 不支持针对 .Net Core 2.2 目标 .Net Core 2.1 或更低版本 [重复]

ASP.NET Core框架揭秘(持续更新中…)

.Net Core 3.x 与 .Net Framework 4.7 的兼容性

库是不是应该明确针对 .NET Core 3?

《ASP.NET Core 6框架揭秘》实例演示[34]:缓存整个响应内容