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 prise en charge de .NET et .NET Core. Pour la version actuelle, consultez la version .NET 8 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 un framework multiplateforme à hautes performances et open source pour créer des applications cloud modernes et connectées à Internet.

Avec ASP.NET Core, vous pouvez :

  • Créer des applications et services web, des applications Internet des objets (IoT) 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écutez 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é.
  • Razor Pages permet de coder des scénarios orientés page de façon plus simple et plus productive.
  • 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.
  • Capacité à développer et à exécuter sur Windows, macOS et Linux.
  • Open source et centré sur la communauté.
  • Intégration de frameworks modernes côté client et de workflows de développement.
  • Prise en charge de l’hébergement des services d’appel de procédure distante (RPC) à l’aide de gRPC.
  • Un système de configuration prêt pour le cloud et basé sur les environnements.
  • Injection de dépendances intégrée.
  • Un pipeline des requêtes HTTP léger, à hautes performances et modulaire.
  • Capacité d’hébergement sur les éléments suivants :
  • Contrôle de version 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

Le modèle MVC d’ASP.NET Core fournit des fonctionnalités pour créer des API web et des applications web :

Développement côté client

ASP.NET Core inclut Blazor pour la création d’une interface utilisateur web riche et interactive, et s’intègre également à d’autres frameworks JavaScript front-end courants, comme Angular, React, Vue et Bootstrap. Pour plus d’informations, consultez Blazor ASP.NET Core 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 :

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 Nouveau développement de l’interface utilisateur web côté serveur Prise en main des pages Razor
    Application web Pour maintenir une application MVC Bien démarrer avec MVC
    Application web Développement de l’interface utilisateur web côté client Commencer à utiliser Blazor
    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 Bien démarrer avec un service gRPC
    Application en temps réel Communication bidirectionnelle entre les serveurs et les clients connectés Commencer à utiliser SignalR
  2. Suivez un tutoriel expliquant comment exécuter l’accès aux données de base.

    Scénario Didacticiel
    Nouveau développement Pages Razor avec Entity Framework Core
    Pour maintenir une application MVC MVC avec Entity Framework Core
  3. Lisez une présentation des principes fondamentaux d’ASP.NET Core qui s’appliquent à tous les types d’application.

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

†Vous trouverez aussi un tutoriel d’API web interactif. 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é à des fins de test.

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 Mettre à jour depuis ASP.NET vers ASP.NET Core.

ASP.NET Core est un framework multiplateforme à hautes performances et open source pour créer des applications cloud modernes et connectées à Internet. Avec ASP.NET Core, vous pouvez :

  • Créer des applications et services web, des applications Internet des objets (IoT) 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 Core ou .NET Framework.

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é.
  • Razor Pages permet de coder des scénarios orientés page de façon plus simple et plus productive.
  • 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.
  • Capacité à développer et à exécuter sur Windows, macOS et Linux.
  • Open source et centré sur la communauté.
  • Intégration de frameworks modernes côté client et de workflows de développement.
  • Prise en charge de l’hébergement des services d’appel de procédure distante (RPC) à l’aide de gRPC.
  • Un système de configuration prêt pour le cloud et basé sur les environnements.
  • Injection de dépendances intégrée.
  • Un pipeline des requêtes HTTP léger, à hautes performances et modulaire.
  • Capacité d’hébergement sur les éléments suivants :
  • Contrôle de version 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

Le modèle MVC d’ASP.NET Core fournit des fonctionnalités pour créer des API web et des applications web :

Développement côté client

ASP.NET Core s’intègre parfaitement aux frameworks et bibliothèques courants côté client, notamment Blazor, Angular, React, Vue et Bootstrap. Pour plus d’informations, consultez Blazor ASP.NET Core 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. D’une façon 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 de détails concernant ce changement, consultez A first look at changes coming in 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 des pages Razor
    Application web Pour maintenir une application MVC Bien démarrer avec MVC
    API Web Créer une API web
    Application en temps réel Commencer à utiliser 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 Pages Razor avec Entity Framework Core
    Pour maintenir une application MVC MVC avec Entity Framework Core
  3. Lisez une présentation des principes fondamentaux d’ASP.NET Core qui s’appliquent à tous les types d’application.

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

†Il existe aussi un tutoriel sur l’API web que vous pouvez suivre entièrement dans le navigateur (aucune installation d’IDE locale requise). Le code s’exécute dans Azure Cloud Shell, et curl est utilisé à des fins de test.

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 Mettre à jour depuis ASP.NET vers 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 référentiel 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 façon 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 dans 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 :