Partager via


Vue d’ensemble d’ASP.NET Core

Par Daniel Roth, Rick Anderson et Shaun Luttin

Remarque

Ceci n’est pas la dernière version de cet article. Pour la version actuelle, consultez la version .NET 9 de cet article.

Avertissement

Cette version d’ASP.NET Core n’est plus prise en charge. Pour plus d’informations, consultez la stratégie de support .NET et .NET Core. Pour la version actuelle, consultez la version .NET 9 de cet article.

Important

Ces informations portent sur la préversion du produit, qui est susceptible d’être en grande partie modifié avant sa commercialisation. Microsoft n’offre aucune garantie, expresse ou implicite, concernant les informations fournies ici.

Pour la version actuelle, consultez la version .NET 9 de cet article.

ASP.NET Core est une infrastructure multiplateforme de haut niveau de performance de création d’applications web modernes. Cette infrastructure open source permet aux développeurs de créer des applications web, des services et des API qui peuvent s’exécuter sur Windows, macOS et Linux. Elle est conçue pour développer des applications à grande échelle et peut gérer des charges de travail de toute taille, ce qui en fait un choix robuste pour les applications de niveau entreprise.

Avec ASP.NET Core, vous pouvez :

  • Créez des applications web et des services, des applications Azure IoT (Internet des objets) et des back-ends mobiles.
  • Utiliser vos outils de développement préférés sur Windows, macOS et Linux.
  • Déployer dans le cloud ou localement.
  • Exécuter sur .NET.

Pourquoi utiliser ASP.NET Core ?

Des millions de développeurs utilisent ou ont utilisé ASP.NET 4.x pour créer des applications web. ASP.NET Core est une refonte d’ASP.NET 4.x incluant des modifications d’architecture qui aboutissent à un framework plus léger et modulaire.

ASP.NET Core offre les avantages suivants :

  • Un scénario unifié pour créer une interface utilisateur web et des API web.
  • Architecturé pour la testabilité.
  • Blazor vous permet d’utiliser C# dans le navigateur en même temps que JavaScript. Partagez les logiques d’applications côté serveur et côté client écrites avec .NET.
  • Razor Les pages facilitent le codage des scénarios axés sur les pages et facilitent la productivité.
  • Capacité à développer et à exécuter sur Windows, macOS et Linux.
  • Open source et axé sur la communauté.
  • Intégration de frameworks modernes côté client et de workflows de développement.
  • Prise en charge de l’hébergement de services RPC (Remote Procedure Call) à l’aide de gRPC.
  • Un système de configuration basé sur l’environnement prêt pour le cloud.
  • Injection de dépendances intégrée.
  • Un pipeline de requêtes HTTP léger, hautes performances et modulaire.
  • Capacité d’hébergement sur les éléments suivants :
  • Versionnage côte à côte.
  • Outils qui simplifient le développement web moderne.

Créer des API web et une interface utilisateur web en utilisant le modèle MVC d’ASP.NET Core

ASP.NET Core MVC fournit des fonctionnalités permettant de créer des API web et des applications web :

  • Le modèle Model-View-Controller (MVC) permet de rendre vos API web et applications web testables.
  • Blazor, infrastructure d’interface utilisateur web basée sur des composants basée sur C# qui prend en charge le rendu côté serveur et le rendu côté client via WebAssembly.
  • Razor Pages est un modèle de programmation basé sur des pages qui rend la création de l'interface utilisateur web plus facile et productive.
  • Razor Le balisage fournit une syntaxe productive pour Razor Pages et les vues MVC.
  • Les tag Helpers permettent au code côté serveur de participer à la création et au rendu d’éléments HTML dans des Razor fichiers.
  • La prise en charge intégrée de plusieurs formats de données et de négociation de contenu permet à vos API web d’atteindre un large éventail de clients, notamment les navigateurs et les appareils mobiles.
  • La liaison de modèle mappe automatiquement les données des requêtes HTTP aux paramètres de méthode d’action.
  • La validation de modèle effectue automatiquement la validation côté client et côté serveur.

Développement côté client

ASP.NET Core inclut Blazor la création d’une interface utilisateur web richement interactive et s’intègre également à d’autres frameworks JavaScript frontend populaires tels que Angular, React, Vue et Bootstrap. Pour plus d’informations, consultez ASP.NET Core Blazor et les rubriques connexes sous développement côté client.

Frameworks cibles ASP .NET Core

ASP.NET Core 3.x ou ultérieur peut cibler seulement .NET Core.

Il y a plusieurs avantages à utiliser .NET et ces avantages s’accroissent avec chaque version. Voici quelques avantages de .NET Core par rapport à .NET Framework :

  • Multiplateforme. S’exécute sur Windows, macOS et Linux.
  • Amélioration des performances
  • Versionnement côte à côte
  • Nouvelles API
  • Libre

Nous vous recommandons la séquence de tutoriels suivante comme introduction au développement des applications ASP.NET Core :

  1. Suivez un tutoriel pour le type d’application que vous souhaitez développer ou gérer.

    Type d’application Scénario Didacticiel
    Application web Développement de l’interface utilisateur web côté client Bien démarrer avec Blazor
    Application web Nouveau développement de l’interface utilisateur web côté serveur Commencez avec Razor Pages
    Application web Pour maintenir une application MVC Bien démarrer avec MVC
    API Web Services HTTP RESTful Créer une API web
    Application d’appel de procédure distante Services contrat-first utilisant des mémoires tampons de protocole Démarrez avec un service gRPC
    Application en temps réel Communication bidirectionnelle entre les serveurs et les clients connectés Bien démarrer avec SignalR
  2. Suivez un tutoriel expliquant comment exécuter l’accès aux données de base.

    Scénario Didacticiel
    Nouveau développement Blazor avec Entity Framework Core
    Nouveau développement Razor Pages avec Entity Framework Core
    Pour maintenir une application MVC MVC avec Entity Framework Core
  3. Lisez une vue d’ensemble de ASP.NET notions de base qui s’appliquent à tous les types d’applications.

  4. Parcourez la table des matières pour d’autres rubriques qui vous intéressent.

†Il y a également un didacticiel interactif sur l’API web. Aucune installation locale des outils de développement n’est requise. Le code s’exécute dans Azure Cloud Shell dans votre navigateur et curl est utilisé pour les tests.

Migrer à partir de .NET Framework

Pour obtenir un guide de référence sur la migration d’applications ASP.NET 4.x vers ASP.NET Core, consultez Update from ASP.NET to ASP.NET Core.

ASP.NET Core est une infrastructure multiplateforme, haute performance et open source permettant de créer des applications modernes, compatibles avec le cloud et connectées à Internet. Avec ASP.NET Core, vous pouvez :

Pourquoi utiliser ASP.NET Core ?

Des millions de développeurs utilisent ou ont utilisé ASP.NET 4.x pour créer des applications web. ASP.NET Core est une reconception d’ASP.NET 4.x, avec des modifications d’architecture qui aboutissent à un framework plus léger et modulaire.

ASP.NET Core offre les avantages suivants :

  • Un scénario unifié pour créer une interface utilisateur web et des API web.
  • Architecturé pour la testabilité.
  • Blazor vous permet d’utiliser C# dans le navigateur en même temps que JavaScript. Partagez les logiques d’applications côté serveur et côté client écrites avec .NET.
  • Razor Les pages facilitent le codage des scénarios axés sur les pages et facilitent la productivité.
  • Capacité à développer et à exécuter sur Windows, macOS et Linux.
  • Open source et axé sur la communauté.
  • Intégration de frameworks modernes côté client et flux de développement.
  • Prise en charge de l’hébergement de services RPC (Remote Procedure Call) à l’aide de gRPC.
  • Un système de configuration basé sur l’environnement prêt pour le cloud.
  • Injection de dépendances intégrée.
  • Un pipeline de requêtes HTTP léger, hautes performances et modulaire.
  • Capacité d’hébergement sur les éléments suivants :
  • Versionnage côte à côte.
  • Outils qui simplifient le développement web moderne.

Créer des API web et une interface utilisateur web en utilisant le modèle MVC d’ASP.NET Core

ASP.NET Core MVC fournit des fonctionnalités permettant de créer des API web et des applications web :

Développement côté client

ASP.NET Core s’intègre en toute transparence aux infrastructures et bibliothèques côté client populaires, notamment Blazor, Angular, React, Vue et Bootstrap. Pour plus d’informations, consultez ASP.NET Core Blazor et les rubriques connexes sous développement côté client.

ASP.NET Core ciblant .NET Framework

ASP.NET Core 2.x peut cibler .NET Core ou le .NET Framework. Les applications ASP.NET Core ciblant .NET Framework ne sont pas multiplateformes : elles s’exécutent seulement sur Windows. En règle générale, ASP.NET Core 2.x est constitué de bibliothèques .NET Standard . Les bibliothèques écrites avec .NET Standard 2.0 s’exécutent sur n’importe quelle plateforme .NET qui implémente .NET Standard 2.0.

ASP.NET Core 2.x est pris en charge sur les versions .NET Framework compatibles avec .NET Standard 2.0 :

  • La dernière version de .NET framework recommandée.
  • .NET Framework 4.6.1 ou ultérieur.

ASP.NET Core 3.0 ou ultérieur s’exécute uniquement sur .NET Core. Pour plus d’informations sur cette modification, consultez Une première vue des modifications à venir dans ASP.NET Core 3.0.

Le ciblage de .NET Core présente plusieurs avantages, qui sont plus nombreux à chaque version. Voici certains avantages de .NET Core par rapport à .NET Framework :

Pour aider à combler l’écart entre .NET Framework et .NET Core, le pack de compatibilité Windows a rendu des milliers d’API Windows uniquement disponibles dans .NET Core. Ces API n’étaient pas disponibles dans .NET Core 1.x.

Nous vous recommandons la séquence de tutoriels et d’articles suivante comme introduction au développement des applications ASP.NET Core :

  1. Suivez un tutoriel pour le type d’application que vous souhaitez développer ou gérer.

    Type d’application Scénario Didacticiel
    Application web Pour un nouveau développement Prise en main de Razor Pages
    Application web Pour maintenir une application MVC Bien démarrer avec MVC
    API Web Créer une API web
    Application en temps réel Bien démarrer avec SignalR
  2. Suivez un tutoriel expliquant comment exécuter l’accès aux données de base.

    Scénario Didacticiel
    Pour un nouveau développement Razor Pages avec Entity Framework Core
    Pour maintenir une application MVC MVC avec Entity Framework Core
  3. Lisez une vue d’ensemble de ASP.NET notions de base qui s’appliquent à tous les types d’applications.

  4. Parcourez la Table des matières pour d’autres rubriques qui vous intéressent.

Il y a également un didacticiel d’API web à suivre entièrement dans le navigateur, aucune installation d’IDE locale n’est requise. Le code s’exécute dans Azure Cloud Shell et curl est utilisé pour les tests.

Migrer à partir de .NET Framework

Pour obtenir un guide de référence sur la migration d’applications ASP.NET vers ASP.NET Core, consultez Update from ASP.NET to ASP.NET Core.

Comment télécharger un exemple

La plupart des articles et tutoriels contiennent des liens vers des exemples de code.

  1. Téléchargez le fichier zip du dépôt ASP.NET.
  2. Décompressez le fichier AspNetCore.Docs-main.zip.
  3. Pour accéder à l’exemple d’application d’un article dans le référentiel décompressé, utilisez l’URL du lien de l’exemple d’article pour vous aider à accéder au dossier de l’exemple. En règle générale, l’exemple de lien d’un article apparaît en haut de l’article avec le texte de lien Afficher ou télécharger l’exemple de code.

Directives de préprocesseur dans l’exemple de code

Pour illustrer plusieurs scénarios, les exemples d’applications utilisent les directives de préprocesseur #define et #if-#else/#elif-#endif pour compiler et exécuter différentes sections de l’exemple de code de manière sélective. Pour ces exemples qui utilisent cette approche, définissez la directive #define en haut des fichiers C# pour définir le symbole associé au scénario que vous souhaitez exécuter. Certains exemples exigent que vous définissiez le symbole en haut de plusieurs fichiers afin d’exécuter un scénario.

Par exemple, la liste des symboles #define suivante indique que les quatre scénarios sont disponibles (un scénario par symbole). La configuration actuelle de l’exemple exécute le scénario TemplateCode :

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Pour que l’exemple exécute le scénario ExpandDefault, définissez le symbole ExpandDefault et laissez les symboles restants commentés :

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Pour plus d’informations sur l’utilisation des directives de préprocesseur C# pour compiler de manière sélective des sections de code, consultez #define (référence C#) et #if (référence C#).

Changements cassants et avis de sécurité

Les changements cassants et les avis de sécurité sont signalés sur le dépôt Annonces. Les annonces peuvent être limitées à une version spécifique en sélectionnant un filtre Étiquette .

Étapes suivantes

Pour plus d’informations, consultez les ressources suivantes :