什么是新netstandardapp和netcoreapp TFMs之间的区别? [英] What's the difference between the new netstandardapp and netcoreapp TFMs?

查看:285
本文介绍了什么是新netstandardapp和netcoreapp TFMs之间的区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我注意到的NuGet最近增加了对有关.NET核心几个新TFMs,包括支持:

I noticed that NuGet has recently added support for several new TFMs related to .NET Core, including:


  • netstandard (1.0-1.5)

  • netstandardapp (1.5)

  • netcoreapp (1.0)

  • netstandard (1.0-1.5)
  • netstandardapp (1.5)
  • netcoreapp (1.0)

据我所知, netstandard 是.NET的核心相当于一个便携式轮廓;它可以让你使用一个单一的绰号,而不是明确地阐明每次你支持的平台,例如瞄准多个平台便携式net45 + netcore45 + wp81

To the best of my knowledge, netstandard is the .NET Core equivalent of a portable profile; it allows you to target multiple platforms using a single moniker, instead of explicitly spelling out every platform you support, e.g. portable-net45+netcore45+wp81.

同时,根据的这个文件 netstandardapp 更像是一个控制台应用程序在.NET的核心;它代表的东西,任何.NET核心运行时(如CoreCLR,CoreRT)。

Meanwhile, according to this document netstandardapp is more like a console application in .NET Core; it represents something that any .NET Core runtime (e.g. CoreCLR, CoreRT).

那么,到底是 netcoreapp 应该是什么?我发现问题的跟踪它这里,其中包括在这有点儿解释有什么区别底部的评论,但我不明白的是什么

What, then, exactly is netcoreapp supposed to be? I found the tracking issue for it here, which includes a comment at the bottom that kinda explains what the difference is, but I don't get what the difference between

NETStandard.Library +应用程序的主机

NETStandard.Library + app hosts

.NET核心基地安装

.NET Core base install

时。可能有人请解释一下?谢谢你。

is. Could someone please explain it to me? Thanks.

推荐答案

在.NET标准库(netstandard)是指应用模式一致的库。 .NET核心(netcoreapp)运行在.NET标准库的顶部,是一个AppModel。从GitHub的网页,他们anwser什么是.NET应用程序的标准是什么,不同的是使用.NET的核心(的 https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-standard-applications.md )和(的https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard .MD

The .NET Standard Library (netstandard) is a consistent library across app models. .NET Core (netcoreapp) runs on top of .NET Standard Library and is a AppModel. From the github page they anwser what a .NET Standard application is and what the difference is with .NET Core (https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-standard-applications.md) and (https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard.md)

更新:的.NETStandardapp已经过时了。该磊应用程序替换它( https://github.com/NuGet/Home/issues/2524

UPDATE: The .NETStandardapp is obsolete. The NETCore app replaces it (https://github.com/NuGet/Home/issues/2524)

问:什么是.NET标准应用?
答:.NET标准应用是可以在任何.NET核心运行时运行应用程序:CoreCLR(电流),.NETNative(未来)。它可以在许多.NET的核心平台之一(在Windows,OSX,Linux)的运行。它依赖于由给定的运行时提供的主机上。这是自该应用程序所依赖的包构建的组合的框架。它集加载策略允许的依赖较新的版本,没有任何应用程序配置。(如:BindingRedirects不需要)

Q: What is a .NET Standard application? A: A .NET Standard application is an application that can run on any .NET Core runtime: CoreCLR (current), .NETNative (future). It can run on one of many .NET core platforms (Windows, OSX, Linux). It relies on the host provided by the given runtime. It's a composable framework built from the packages on which the application depends. Its assembly loading policy permits newer versions of dependencies without any application configuration (eg: BindingRedirects are not required).

问:如何比.NETCore这有什么不同?答:.NETCore目标
框架是指Windows 8,Windows 8.1中和通用的Windows
平台的应用程序。为了兼容性的这个名字不能
被重复使用.NET的核心应用。该品牌重叠
不幸

Q: How is this different than .NETCore? A: The .NETCore target framework represents Windows 8, Windows 8.1, and Universal Windows Platform applications. For compatibility purposes this moniker cannot be reused for ".NET Core applications". The branding overlap is unfortunate.

问:如何比.NETStandard这有什么不同?
答:NETStandard目标框架是一个抽象的目标框架,代表许多框架和平台的API表面。因此NETStandard组件可支持NETStandard由装配有针对性的,比如在任何平台上运行:.NET桌面,Windows Phone的,通用的Windows平台的应用程序,.NET标准应用等NETStandardApplication是代表一个具体的目标框架平台既API表面和实施。 .NET标准的应用程序都是靠自己运行的。 .NETStandard库必须发布换或消耗-由一个特定的具体目标框架中该类型的应用中使用。

Q: How is this different than .NETStandard? A: The NETStandard target framework is an abstract target framework that represents API surface of many frameworks and platforms. As such NETStandard assemblies can run on any platform that supports the NETStandard targeted by that assembly, for example: .NET Desktop, Windows Phone, Universal Windows Platform applications, .NET Standard applications, etc. NETStandardApplication is a concrete target framework that represents a single platform with both API surface and implementation. .NET standard applications are runnable on their own. .NETStandard libraries must be published-for or consumed-by a specific concrete target framework to be used in that type of application.

< A HREF =http://i.stack.imgur.com/k2iEg.png>

这篇关于什么是新netstandardapp和netcoreapp TFMs之间的区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆