首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么许多针对.NET标准构建的.NET核心程序集?

为什么许多针对.NET标准构建的.NET核心程序集?
EN

Stack Overflow用户
提问于 2018-12-21 22:08:15
回答 2查看 187关注 0票数 0

例如,NuGet Microsoft.AspNetCore.Server.Kestral以.NETStandard为目标。我知道这可能是一个实际的选择,因为现在.NET框架/Xamerin应用程序都可以使用这个包。然而,微软在软件包中包含单词NetCore似乎是一个奇怪的名字选择。

如果我从我的.NET全框架web API中引用这个包,严格地说,我的API是一个.NET全框架api,尽管它是由开源的".NET核心“web服务器Kestral提供服务的。

有人知道为什么微软用这个术语吗,或者我误解了什么?

EN

回答 2

Stack Overflow用户

发布于 2018-12-21 22:14:16

ASP.NET核心与.NET核心不同。ASP.NET核心也可以在完整的框架上运行(目前)。包名指的是这个,而不是.NET核心。

如果可以,为什么任何包都不以.NET标准为目标?它将允许更广泛的使用,而不是只针对某个子集。

票数 3
EN

Stack Overflow用户

发布于 2018-12-21 22:20:00

作为对Sami Kuhmonen回答的补充:

摘自.NET Standard

.NET标准是.NET API的正式规范,旨在用于所有.NET实现。.NET标准背后的动机是在.NET生态系统中建立更大的一致性。ECMA335继续为.NET实现行为建立统一性,但是对于.NET库实现的.NET基类库(BCL)没有类似的规范。

.NET标准支持以下关键场景:

  • 为要实现的所有.NET实现定义了一组统一的BCL API,独立于.NET开发人员,使用这组相同的API生成可跨.NET实现使用的可移植库。
  • 减少甚至消除了由于.NET API而导致的共享源代码的有条件编译,仅适用于操作系统API。

这意味着任何针对.NET标准的东西都可以在任何机器上运行,只要它有一个实现其目标标准的框架。例如,任何针对.NET标准2.0的东西都可以在具有以下任何框架版本(或更高版本)的机器上运行:

10.14

  • Xamarin

  • .NET核心2

  • .NET框架4.6.1

  • Mono 5.4

  • Xamarin iOS

Mac 3.8<代码>H122Xamarin安卓8.0

  • Universal Windows Platform 10.0.16299

  • Unity 2018.1<代码>H227<代码>F228
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53886159

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档