75 votes

Ce qui ' la différence entre la nouvelle netstandardapp et les netcoreapp SGFF ?

J'ai remarqué que NuGet a récemment ajouté le support pour plusieurs nouveaux Sgff .NET de Base, y compris:

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

Au meilleur de ma connaissance, netstandard est le .NET de Base équivalent d'un portable profil; elle vous permet de cibler de multiples plates-formes à l'aide d'un seul nom, au lieu de énonçant expressément chaque plate-forme de soutien, par exemple, portable-net45+netcore45+wp81.

Pendant ce temps, selon ce document, netstandardapp est plus comme une application console .NET de Base; il représente quelque chose que tout .NET de Base d'exécution (par exemple, CoreCLR, CoreRT).

Alors, en quoi exactement est - netcoreapp supposé être? J'ai trouvé le suivi de la question de cela ici, qui comprend un commentaire au bas ca explique ce qu'est la différence, mais je ne comprends pas quelle est la différence entre

NETStandard.Bibliothèque + app hôtes

et

.NET de Base à une installation de base

est. Quelqu'un pourrait-il svp me l'expliquer?

40voto

Martijn van Put Points 2882

L' .NET de la Bibliothèque Standard (netstandard) est une bibliothèque d'application des modèles. .NET de Base (netcoreapp) s'exécute au-dessus de .NET de la Bibliothèque Standard et est un AppModel. À partir de la page github ils répondent à ce qu'un .NET application Standard de l'est et quelle est la différence avec les .NET de Base (https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-standard-applications.md) et (https://github.com/dotnet/corefx/blob/master/Documentation/architecture/net-platform-standard.md)

Mise à JOUR: Le .NETStandardapp est obsolète. Le NETCore application remplace (https://github.com/NuGet/Home/issues/2524)

Q: qu'est-Ce que une .NET application Standard? UN: UNE .NET Standard est une application qui peut s'exécuter sur tout .NET de Base d'exécution: CoreCLR (courant).NETNative (avenir). Il peut fonctionner sur un des nombreux .NET de base des plates-formes (Windows, OSX, Linux). Il s'appuie sur l'hôte fourni par le moteur d'exécution. C'est un composable cadre construit à partir de l'paquets dont l'application dépend. Son assemblée politique de chargement permet de nouvelles versions des dépendances, sans aucune configuration de l'application (par exemple: BindingRedirects ne sont pas nécessaires).

Q: Comment est-il différent des autres .NETCore? Un: La .NETCore cible cadre représente Windows 8, Windows 8.1, et Universal Windows Les applications de la plateforme. Pour des raisons de compatibilité ce nom ne peut pas être réutilisé pour d' ".NET applications de Base". L'image de marque de chevauchement est malheureux.

Q: Comment est-il différent des autres .NETStandard? Un: La NETStandard framework cible est un résumé du framework cible que représente l'API de la surface de la plupart des infrastructures et des plates-formes. En tant que tel NETStandard assemblées peuvent s'exécuter sur n'importe quelle plateforme qui prend en charge la NETStandard ciblés par cette assemblée, par exemple: .NET de Bureau, Windows Phone, Universel la Plate-forme Windows applications .NET applications Standard, etc. NETStandardApplication est un béton framework cible qui représente une plateforme unique avec deux API de surface et la mise en œuvre. .NET applications standard sont exécutables sur leur propre. .NETStandard les bibliothèques se doivent d'être publié-ou consommé par un concrètes framework cible pour être utilisé dans ce type d'application.

Overview of .NET Future innovation

20voto

Shaun Luttin Points 1585

Quelle est la différence entre la nouvelle netstandardapp et netcoreapp Sgff?

netstandardapp est obsolète, netcoreapp le remplace.

Alors, quelle est exactement netcoreapp censé être?

netcoreapp est le framework cible nom de l' .NET Plate-forme de Base. Si vous ajoutez netcoreapp à votre projet.json est des cadres de la section, puis une version de votre application s'exécute .NET de Base.

Je ne comprends pas quelle est la différence entre NETStandard.Bibliothèque + app hôtes et les .NET de Base à une installation de base. Quelqu'un pourrait-il svp me l'expliquer?

NETStandard.Bibliothèque + app hôtes est le NetStandard.Package de l'application. Ne pas utiliser ce - qu'il est mort. Il comprend trois hôte d'application des forfaits et de la bibliothèque standard.

  • Microsoft.NETCore.DotNetHostPolicy
  • Microsoft.NETCore.Platforms
  • Microsoft.NETCore.Runtime
  • NETStandard.Library

NET de Base à une installation de base est Microsoft.NetCore.Package de l'application. Utiliser ce lieu. Il conserve deux des forfaits ci-dessus, restes de deux d'entre eux, et ajoute à propos de 37 autres Microsoft.* et System.* des paquets.

  • Supplémentaire Microsoft.* assemblées
  • Microsoft.NETCore.DotNetHostPolicy
  • Microsoft.NETCore.Platforms <----- En avril 2016, ces deux sont devenus des
  • Microsoft.NETCore.Runtime <------- de la partie de la NETStandard.De la bibliothèque.
  • NETStandard.Library
  • Supplémentaire System.* assemblées

Références

https://github.com/NuGet/Home/issues/2524 > les États qui le netstandardapp cible cadre surnom est "n'est plus valide."

https://github.com/dotnet/cli/issues/2482 > indique que "les Projets de cibler NetStandardApp doivent être portés à NetCoreApp. NetStandardApp n'est pas pris en charge par la CLI 1.0.0 RC2."

https://www.myget.org/feed/aspnetvnext/package/nuget/NETStandard.Library > Le paquet de l'histoire montre le grand changement en avril 2016.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X