web-dev-qa-db-fra.com

Quelle est la différence entre ASP.NET 5, .NET Core et ASP.NET Core 5?

Je suis confus sur la distinction entre ces termes:

  • ASP.NET 5 (maintenant renommé ASP.NET Core et publié en 1.0, et non en 5.0)
  • ASP.NET Core 5
  • .NET Core

Quelqu'un peut-il expliquer brièvement?

61
ijaz

ASP.NET 5 (maintenant ASP.NET Core 1.0)

Est la prochaine génération d’ASP.NET qui fournit un cadre moderne et familier pour les scénarios Web et en nuage. Il inclut les prochaines versions de ASP.NET MVC, API Web, Pages Web et SignalR. Il s'agit d'une conception à la fois performante et modulaire, qui prend en charge le fonctionnement côte à côte pour faciliter la migration du site vers le cloud. Ces produits sont développés activement par l'équipe ASP.NET en collaboration avec une communauté de développeurs open source. Ensemble, nous nous engageons à créer la meilleure plate-forme possible pour le développement Web.

Mise à jour: il a été renommé d'ASP.NET 5 à ASP.Net Core 1.0.

.NET Core:

.NET Core est le petit runtime optimisé qui constitue la base d’ASP.NET Core. Il fonctionne actuellement sur Windows, Linux et Mac. Il s'agit d'une conception modulaire hautes performances prenant en charge le fait d'avoir plusieurs applications sur un serveur Web, chacune avec sa propre copie du runtime .NET Core, permettant une expérience côte à côte et facilitant l'adoption de nouvelles applications. Les versions NET Core n'affectent pas les autres applications, ce qui fait de l'architecture .NET Core un bond en avant par rapport à l'actuel classique .NET 4.6. Ces produits sont développés activement par l’équipe .NET et en collaboration avec une communauté de développeurs open source. Ensemble, nous nous engageons à améliorer et à étendre la plate-forme .NET avec de nouvelles fonctionnalités et de nouveaux scénarios.

.NET Core a deux composants principaux. Il inclut un petit moteur d'exécution construit à partir de la même base de code que le CLR .NET Framework. Le runtime .NET Core inclut les mêmes GC et JIT (RyuJIT), mais n’inclut pas de fonctionnalités telles que les domaines d’application ou la sécurité d’accès au code. Le runtime est livré sur NuGet, via le package Microsoft.CoreCLR.

.NET Core inclut également les bibliothèques de classes de base. Ces bibliothèques sont en grande partie le même code que les bibliothèques de classes .NET Framework, mais ont été factorisées (suppression des dépendances) pour nous permettre de livrer un plus petit ensemble de bibliothèques. Ces bibliothèques sont expédiées sous forme de packages System. * NuGet sur NuGet.org.

Pour plus d'informations, voir Introduction à .NET Core

57
Ramakrishna.p

ASP.NET 5 est une nouvelle plate-forme basée sur DNX (.NET Execution Environment). DNX est en service pour le chargement du CLR. Il existe deux types de DNX maintenant: pour Full .NET CLR (à partir de .NET Framework) et pour CoreCLR. CoreCLR est un nouveau CLR léger multiplate-forme (fonctionnant sous Win/Linux/Mac).

ASP.NET 5 fonctionne de manière transparente sur CLR/CoreCLR, car DNX l’abstrait de l’exécution en cours.

Les assemblages IL construits pour l'ancien .NET sont toujours utilisés avec les nouveaux CoreCLR et DNX. Donc, la fonctionnalité ASP.NET 5 est un ensemble de paquets de nugets.

À proprement parler, il n’existe plus de «asp.net core 5» et «.net core» (comme CLR! = .NET). Il y a "ASP.NET 5 s'exécutant sur CoreCLR".

OMI, il est préférable de considérer "ASP.NET 5" comme ".NET 5".

10
Shrike

Il n'y a pas encore d'ASP.net Core 5. En fait, Microsoft a décidé de changer le .net 5 (version ultérieure à la version 4.6) en un nouveau nom: .net Core 

La version publiée en juin 2016 est donc .net Core 1.0

La raison pour laquelle ils lui ont donné un nouveau nom est le changement fondamental qu’ils y ont apporté. 

Ces changements fondamentaux incluent:

  • Multiplate-forme: Il fonctionne sous Windows/Linux/Mac, contrairement aux versions précédentes ne fonctionnant que sous Windows/IIS.
  • C'est entièrement open source maintenant et vous pouvez voir chaque bit de son code dans GitHub.
  • Son performance (en particulier dans ASP.net) est bien meilleur que les versions précédentes, car vous pouvez facilement personnaliser votre pipeline de requêtes en fonction de vos besoins (via les middlewares). semblable à ExpressJs. Dans certains cas, il fonctionne mieux que NodeJs. Jetez un coup d'œil sur ce repère .
  • Il est conçu avec un état d'esprit moderne pour le développement d'applications, pour les applications cloud hautement distribuées, microservices et containers (menu fixe).
4
akazemis

ASP.NET Core est la prochaine version d'ASP.NET MVC 5. Oui, le numéro de version est déroutant! Il a subi quelques changements de nom. Cela a commencé comme ASP.NET vNext, puis est devenu ASP.NET 5, puis a été renommé ASP.NET MVC 6 et est devenu ASP.NET Core 1.0. 

La principale différence entre ASP.NET et ASP.NET Core sont 

  • Fonctionnalités indépendantes de la plate-forme, ASP.NET Core permet d’héberger plusieurs plates-formes (Win/Linux/Mac OS) (multiplateforme).
  • Introduction de la nouvelle version allégée de CLR et d'assemblées avec des cadres non dépendants.

  • Les cadres sont une réécriture complète (suppression des dépendances avec DI) et son projet Open source.

  • Le modèle de projet par défaut du projet est mis à jour avec les scripts de type installés avec JQuery.
  • Nouvelles fonctionnalités de sécurité améliorées et complètement le découplage pour tout son cadre dépendant.

  • Mise à jour du modèle de projet avec une configuration basée sur Jular et angulaire et prise en charge améliorée des packages avec des modules de nœud.

  • Prise en charge de Visual Studio IDE (2015 v3 + 2017 et versions ultérieures) & VS Code IDE.

Si vous êtes novice, veuillez vous référer à ici

2

En passant, il existe également une exécution Mono comme alternative à CoreCLR dans les packages linux apt et Docker. Mono est toujours la valeur par défaut pour l'installation de DNX. Tout ce qui concerne le "Core", c’est qu’il s’agit d’un framework multiplate-forme .net et que, à un moment donné, l’hébergement d’une application ASP.NET 5 n’utilisera pas IIS, Apache, Mono, etc., mais DNX et Libuv.

2
vezenkov

.NET Core 1.0 n'est pas la prochaine version de .NET 4.6.2 (Full .NET Framework). Si c'est la prochaine version, il devrait avoir plus de fonctionnalités que la version précédente. Mais selon Microsoft .NET Core 1.0 ne possède pas certaines des fonctionnalités que .NET 4.6 a. C'est pourquoi ils l'ont appelé .NET Core 1.0 au lieu de .NET 5.

Dans ASP.NET Core 1.0, ils utilisent .NET Core 1.0 comme référence. Cela signifie que nous n'avons pas besoin d'installer .NET Framework pour exécuter notre application ASP.NET Core 1.0.

Vous pouvez trouver des informations plus récentes ici .

1
Chinthaka

ASP.NET Core i.e 1.0/2.0 ... ASP.NET Core est un framework multiplate-forme open source permettant de créer des applications Web modernes et basées sur le cloud sous Windows, MacOS ou Linux.

ASP.NET i.e ... 4.5/4.6 ASP.NET est un framework développé qui fournit tous les services nécessaires à la création d'applications Web de type entreprise, basées sur serveur, sous Windows.

Il n’existe pas ASP.NET Core 5 ni .NET Core. ASP.NET 5 est identique à ASP.NET Core 1.0

Veuillez vous référer au lien: https://docs.Microsoft.com/en-us/aspnet/core/choose-aspnet-framework?view=aspnetcore-2.0

0
raga