ASP.NET Core(ASP.NET 5)应用程序中提供了哪些框架?

我已经看到了在project.json文件中使用的各种框架,使用诸如netcore50dotnetdnx451net45等名称。 “framework”部分的文档project.json并没有(但是)指定如何将这个部分用于不同的框架。

什么框架是可用的,应该在project.json中使用什么名称来定位每个?

更新3

完整列表请参阅目标框架 。

ASP.NET应用程序开发人员需要了解的最常见的TFM是:

  • netcoreappx.y =以.NET Core xy为目标的应用程序(例如netcoreapp1.0 = .NET Core 1.0)
  • netstandardx.y =一个以.NET Standard xy为目标的库。 (例如netstandard2.0 = .NET标准2.0)。 .NET标准库可以在桌面.NET,Windows Phone,Mono等等上运行。
  • net4xy =面向桌面.NET Framework 4.xy的库或控制台应用程序(例如, net452net46

更新2 (2015年12月9日)

现在可以从dotnet获得一些官方的文档。 请参阅.NET平台标准→Nuget

对于面向遵循.NET标准的多个平台的库,这些TFM(目标框架标记)是可用的

更新 (2015年8月12日)

这个Nuget博客post显示了可用于nuget的额外TFM。 它也解释了dotnet TFM。

原始回应

虽然这不是官方文档, 但Oren Novotny的博客文章有一个很好的表格,显示了不同的目标框架标记。

截至目前,只有两个三个任何包支持。

.Net Framework 4.5.1 = dnx451 .Net Framework 4.5.2 = dnx452 .Net Core 5.0 = dnx50

.NET Framework 4.6.0(dnx46)将在不久的将来发布。

仍然取决于你的意思是“可用”。 任何人都可以发布一个新的框架是他们想要的,那个猫现在已经不在了。 但是,默认情况下,dnu使用project.json通过查看nuget.org上的主要提要来查找依赖关系。 现在在nuget.org上,这些是唯一的dnx框架依赖关系。

例如,看看microsoft.aspnet.mvc nuget页面: https ://www.nuget.org/packages/Microsoft.AspNet.Mvc/6.0.0-beta4

 Dependencies DNX 4.5.1 Microsoft.AspNet.Authorization (≥ 1.0.0-beta4) Microsoft.AspNet.Cors (≥ 1.0.0-beta4) Microsoft.AspNet.Mvc.Razor (≥ 6.0.0-beta4) Microsoft.Framework.Caching.Memory (≥ 1.0.0-beta4) DNXCore 5.0 Microsoft.AspNet.Authorization (≥ 1.0.0-beta4) Microsoft.AspNet.Cors (≥ 1.0.0-beta4) Microsoft.AspNet.Mvc.Razor (≥ 6.0.0-beta4) Microsoft.Framework.Caching.Memory (≥ 1.0.0-beta4) 

编辑:在早期的testing版本中也有一个aspnet50和aspnetcore50,但它们已被弃用,应分别用dnx451和dnxcore50replace。