Vue d’ensemble de ASP.NET Core

Par Daniel Roth, Rick Anderson et Shaun Luttin

ASP.NET Core est une infrastructure open source multiplateforme, haute performance et multiplateforme pour la création d’applications modernes, connectées au cloud et connectées à Internet.

Avec ASP.NET Core, vous pouvez :

  • Créez des applications web et des services, des applications 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écutez sur .NET Core.

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 nouvelle conception de ASP.NET 4.x, y compris les modifications architecturales qui entraînent un framework plus léger et plus modulaire.

ASP.NET Core offre les avantages suivants :

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 côté client populaires, notamment Blazor, Angular, React et Bootstrap. Pour plus d’informations, consultez ASP.NET Core Blazor et les rubriques connexes sous développement côté client.

ASP.NET Core frameworks cibles

ASP.NET Core 3.x et versions ultérieures ne peuvent cibler que .NET Core. En règle générale, ASP.NET Core est composé 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.

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 :

Nous vous recommandons de suivre la séquence de tutoriels suivante pour une introduction au développement d’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 d’interface utilisateur web côté serveur Prise en main des Razor pages
    Application web Gestion d’une application MVC Bien démarrer avec MVC
    Application web Développement de l’interface utilisateur web côté client Bien démarrer avec Blazor
    API Web RESTservices HTTP avec ful Créer une API web
    Application d’appel de procédure distante Services de premier contrat 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 Bien démarrer avec SignalR
  2. Suivez un didacticiel qui montre comment effectuer un accès aux données de base.

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

  4. Parcourez la table des matières pour d’autres sujets d’intérêt.

†There est également un didacticiel sur l’API web interactive. Aucune installation locale des outils de développement n’est requise. Le code s’exécute dans un Cloud Shell Azure 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 Migrer de ASP.NET vers ASP.NET Core.

ASP.NET Core est une infrastructure open source multiplateforme, haute performance et multiplateforme pour la création d’applications modernes, connectées au 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 refonte 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 :

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 en toute transparence aux infrastructures et bibliothèques côté client populaires, notamment Blazor, Angular, React et Bootstrap. Pour plus d’informations, consultez ASP.NET Core Blazor rubriques et 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. ASP.NET Core applications ciblant .NET Framework ne sont pas multiplateformes, elles s’exécutent uniquement 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 du .NET Framework est recommandée.
  • .NET Framework 4.6.1 et versions ultérieures.

ASP.NET Core 3.0 et 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 réduire 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 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 qui montre comment effectuer un 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 des principes de base de ASP.NET Core qui s’appliquent à tous les types d’applications.

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

†There est également un didacticiel sur l’API web que vous suivez 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é à 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 Migrer de 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 de l’exemple de lien de l’article pour vous aider à accéder au dossier de l’exemple. En règle générale, l’exemple de lien d’un article s’affiche 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 et #if-#else/#elif-#endif de #define compilation sélective pour compiler et exécuter différentes sections d’exemple de code. Pour ces exemples qui utilisent cette approche, définissez la #define directive en haut des fichiers C# pour définir le symbole associé au scénario que vous souhaitez exécuter. Certains exemples nécessitent la définition du 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#) .

Régions dans l’exemple de code

Certains exemples d’applications contiennent des sections de code entourées de directives #region et #endregion C#. Le système de génération de documentation injecte ces régions dans les rubriques de documentation affichées.

Les noms de région contiennent généralement le mot « extrait de code ». L’exemple suivant montre une région nommée snippet_WebHostDefaults:

#region snippet_WebHostDefaults
Host.CreateDefaultBuilder(args)
    .ConfigureWebHostDefaults(webBuilder =>
    {
        webBuilder.UseStartup<Startup>();
    });
#endregion

L’extrait de code C# précédent est référencé dans le fichier Markdown de la rubrique avec la ligne suivante :

[!code-csharp[](sample/SampleApp/Program.cs?name=snippet_WebHostDefaults)]

Vous pouvez ignorer (ou supprimer) en toute sécurité les #region#endregion directives qui entourent le code. Ne modifiez pas le code dans ces directives si vous envisagez d’exécuter les exemples de scénarios décrits dans la rubrique. N’hésitez pas à modifier le code quand vous testez d’autres scénarios.

Pour plus d’informations, consultez Contribuer à la documentation ASP.NET : extraits de code.

Changements cassants et avis de sécurité

Les changements cassants et les avis de sécurité sont signalés sur le référentiel 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 :