Voici un tableau de référence des différents espaces de nom de .NET Core :
Nom | Description |
---|---|
Microsoft.CSharp.RuntimeBinder | Cet espace de noms permet de fournir des classes et interfaces pour l'interopérabilité entre le Dynamic Language Runtime (DLR) et le langage C#. Il est principalement utilisé pour les fonctionnalités dynamiques en C#. |
Microsoft.VisualBasic | Cet espace de noms contient des types spportant le runtime Visual Basic. Il est utilisé pour les fonctionnalités spécifiques à Visual Basic, y compris les types de données et les opérations associées. |
Microsoft.VisualBasic.CompilerServices | Cet espace de noms contient des types destinés à un usage interne supportant le compilateur Visual Basic. Cet espace de nom expose des classes utilisées en interne pour compiler et exécuter des programmes Visual Basic. |
Microsoft.VisualBasic.FileIO | Cet espace de noms contient des types supportant l'objet système de fichiers My en Visual Basic, facilitant les opérations sur les fichiers et les répertoires. |
Microsoft.Win32.SafeHandles | Cet espace de noms contient des classes abstraites dérivées de classes de gestion sécurisée (safe handle) fournissant des fonctionnalités communes pour la gestion des descripteurs de fichiers et du système d'exploitation de manière sécurisée. |
System | Cet espace de noms contient des classes fondamentales et des classes de base qui définissent les types de données courants, les événements, les gestionnaires d'événements, les interfaces, les attributs, et les exceptions de traitement. |
System.Buffers | Cet espace de noms contient des types utilisés pour créer et gérer des tampons mémoire, comme Span<T> et Memory<T>, facilitant la gestion efficace de la mémoire. |
System.Buffers.Binary | Cet espace de noms permet de fournir des méthodes statiques pour lire et écrire des représentations binaires des types primitifs depuis et vers des tranches d'octets (Span<byte>). |
System.Buffers.Text | Cet espace de noms contient des types pour analyser et formater des types de données courants à partir et vers des représentations textuelles UTF-8. |
System.CodeDom.Compiler | Cet espace de noms contient des types pour la génération et la compilation de code source dans des langages de programmation supportés, utilisant le modèle Code Document Object Model (CodeDOM). |
System.Collections | Cet espace de noms contient des interfaces et des classes définissant diverses collections d'objets, comme les listes, les files d'attente, les tableaux de bits, les tables de hachage et les dictionnaires. |
System.Collections.Concurrent | Cet espace de noms permet de fournir plusieurs classes de collection thread-safe à utiliser lorsque plusieurs processus léger accèdent à la collection simultanément. Cela remplace les types correspondants des espaces de noms System.Collections et System.Collections.Generic. |
System.Collections.Generic | Cet espace de noms contient des interfaces et des classes pour définir des collections génériques, permettant de créer des collections fortement typées offrant une meilleure sécurité de type et des performances améliorées par rapport aux collections non génériques. |
System.Collections.Immutable | Cet espace de noms contient des interfaces et des classes pour définir des collections immuables, où les collections ne peuvent pas être modifiées après leur création. |
System.Collections.ObjectModel | Cet espace de noms contient des classes utilisées comme collections dans le modèle objet d'une bibliothèque réutilisable, souvent utilisées lorsque les propriétés ou les méthodes retournent des collections. |
System.Collections.Specialized | Cet espace de noms contient des collections spécialisées et fortement typées, comme un dictionnaire de liste chaînée, un vecteur de bits et des collections contenant uniquement des chaînes. |
System.ComponentModel | Cet espace de noms permet de fournir des classes pour implémenter le comportement des composantes et contrôles à l'exécution et à la conception, y compris les classes de base et les interfaces pour les attributs, les convertisseurs de type, la liaison aux sources de données et la gestion des licences. |
System.ComponentModel.DataAnnotations | Cet espace de noms permet de fournir des classes d'attributs utilisées pour définir des métadonnées pour les contrôles de données ASP.NET MVC et ASP.NET, permettant la validation et la description des données. |
System.ComponentModel.DataAnnotations.Schema | Cet espace de noms permet de fournir un support pour les classes d'attributs utilisées pour définir des métadonnées pour les contrôles de données ASP.NET MVC et ASP.NET, en particulier pour les configurations liées aux bases de données. |
System.ComponentModel.Design | Cet espace de noms contient des classes que les développeurs peuvent utiliser pour créer un comportement personnalisé à la conception pour les composantes et les interfaces utilisateur pour configurer les composantes à la conception. |
System.ComponentModel.Design.Serialization | Cet espace de noms permet de fournir des types supportant la personnalisation et le contrôle de la sérialisation à la conception, facilitant le travail avec la sérialisation des objets à la conception. |
System.Configuration.Assemblies | Cet espace de noms contient des classes utilisées pour configurer un assembly, souvent utilisé dans les scénarios de configuration d'assemblies .NET. |
System.Data | Cet espace de noms permet de fournir des classes représentant l'architecture ADO.NET, permettant de gérer efficacement les données à partir de multiples sources de données. |
System.Data.Common | Cet espace de noms contient des classes partagées par les fournisseurs de données .NET, fournissant des fonctionnalités de base pour l'accès aux données. |
System.Data.SqlTypes | Cet espace de noms permet de fournir des classes représentant les types de données natifs dans SQL Server. Ces classes offrent une alternative plus sûre et plus rapide aux types de données fournis par le runtime .NET, en évitant les erreurs de conversion de types. |
System.Diagnostics | Cet espace de noms permet d'interagir avec les processus système, les journaux d'événements et les compteurs de performance. |
System.Diagnostics.CodeAnalysis | Cet espace de noms contient des classes pour l'interaction avec les outils d'analyse de code, utilisés pour vérifier la conformité aux conventions de codage (exemple : règles de sécurité). |
System.Diagnostics.Contracts | Cet espace de noms permet de gérer les contrats de programme comme les préconditions, postconditions et invariants pour renforcer la validité du code. |
System.Diagnostics.SymbolStore | Cet espace de noms permet de fournir des classes pour lire et écrire des informations de symboles de débogage, comme les correspondances entre le code source et les instructions intermédiaires (MSIL). |
System.Diagnostics.Tracing | Cet espace de noms permet de créer des événements fortement typés capturés par Event Tracing for Windows (ETW). |
System.Drawing | Cet espace de noms permet d'offrir des fonctionnalités graphiques de base via GDI+. Inclut également des fonctionnalités avancées pour le dessin 2D, les images et le texte. |
System.Dynamic | Cet espace de noms permet de fournir des classes et interfaces pour le Runtime de Langage Dynamique (DLR), facilitant la prise en charge des langages dynamiques. |
System.Globalization | Cet espace de noms contient des classes gérant les informations liées aux cultures, comme les formats de date, de nombre et de devise, ainsi que les calendriers. |
System.IO | Cet espace de nom permet de lire et écrire des fichiers et des flux de données, ainsi que de manipuler les fichiers et répertoires. |
System.IO.Compression | Cet espace de noms permet de fournir des services de compression et de décompression pour les flux de données. |
System.IO.Enumeration | Cet espace de noms permet de gérer la recherche et l'énumération des éléments dans le système de fichiers. |
System.IO.IsolatedStorage | Cet espace de noms permet la création et l'utilisation de magasins isolés pour lire et écrire des données de manière sécurisée, avec une isolation par utilisateur ou par domaine. |
System.IO.MemoryMappedFiles | Cet espace de noms permet d'offrir des classes pour utiliser des fichiers cartographiés en mémoire, ce qui permet de manipuler directement les contenus d'un fichier dans l'espace d'adressage logique de l'application. |
System.IO.Pipes | Cet espace de noms permet de fournir des types pour la communication inter-processus à l'aide de tuyaux (pipes) anonymes ou nommés. |
System.Linq | Cet espace de noms contient des classes et interfaces pour effectuer des requêtes LINQ (Language-Integrated Query) sur des collections. |
System.Linq.Expressions | Cet espace de noms permet de gérer des classes permettant de représenter les expressions de code sous forme d'arbres d'expressions, facilitant la manipulation de code au niveau du langage. |
System.Net | Cet espace de noms permet de fournir des interfaces pour divers protocoles réseau, et est utilisé pour développer des applications connectées (bureau et Windows Store). |
System.Net.Cache | Cet espace de noms contient des définitions des types et énumérations pour gérer les politiques de mise en cache des ressources obtenues via WebRequest et HttpWebRequest. |
System.Net.Http | Cet espace de noms contient une interface de programmation pour les applications HTTP modernes. |
System.Net.Http.Headers | Cet espace de noms permet de gérer les collections d'entêtes HTTP utilisés dans l'espace de noms System.Net.Http. |
System.Net.Mail | Cet espace de noms contient des classes pour envoyer des courriels via un serveur SMTP (Simple Mail Transfer Protocol). |
System.Net.Mime | Cet espace de noms permet de fournir des types pour représenter les entêtes MIME (Multipurpose Internet Mail Exchange), souvent utilisés avec les courriels dans System.Net.Mail. |
System.Net.NetworkInformation | Cet espace de noms permet d'offrir des informations sur le trafic réseau, les adresses réseau, et les notifications de changement d'adresse. Contient également les classes pour utiliser l'utilitaire Ping. |
System.Net.Security | Cet espace de noms permet de fournir des flux réseau sécurisés pour les communications entre hôtes. |
System.Net.Sockets | Cet espace de noms permet de proposer une implémentation gérée de l'interface Windows Sockets (Winsock) pour un contrôle précis des accès réseau. |
System.Net.WebSockets | Cet espace de noms permet d'implémenter l'interface WebSocket pour permettre les communications réseau full-duplex. |
System.Numerics | Cet espace de noms permet de fournir des types numériques complémentaires, tels que les nombres complexes et les grandes entiers (BigInteger). |
System.Reflection | Cet espace de noms permet de gérer la récupération et la manipulation d'informations sur les assemblies, modules, membres et paramètres via l'examen des métadonnées. |
System.Reflection.Emit | Cet espace de noms permet de générer du code MSIL et des fichiers exécutables (PE) à la volée, principalement utilisé par les moteurs de script et les compilateurs. |
System.Reflection.Metadata | Cet espace de noms permet de fournir des fonctionnalités de bas niveau pour lire les métadonnées d'assemblage, conformément à la norme ECMA-335. Cet espace de noms est utilisé par les compilateurs et outils devant lire les métadonnées des assemblies. |
System.Reflection.Metadata.Ecma335 | Cet espace de noms permet d'offrir des outils pour écrire les métadonnées d'assemblage suivant la norme ECMA-335, utilisé par les compilateurs pour générer des métadonnées. |
System.Reflection.PortableExecutable | Cet espace de noms contient des classes pour lire ou écrire des fichiers exécutables portables (PE), un format de fichier utilisé par Windows pour les exécutables et les DLL. |
System.Resources | Cet espace de noms permet de fournir des classes pour la gestion des ressources, comme les fichiers de chaînes de caractères, images, et autres données localisées dans les applications. |
System.Runtime | Cet espace de noms permet de fournir des types avancés soutenant plusieurs espaces de noms, comme System, Runtime, et Security. Ces types offrent une infrastructure de base pour le runtime .NET, gérant des tâches liées à l'exécution du code. |
System.Runtime.CompilerServices | Cet espace de noms contient des fonctionnalités pour les auteurs de compilateurs en code géré. Il permet de spécifier des attributs dans les métadonnées affectant le comportement à l'exécution du Common Language Runtime (CLR), optimisant ainsi la gestion du code. |
System.Runtime.ConstrainedExecution | Cet espace de noms contient les définitions des types garantissant la fiabilité du code dans des régions d'exécution contraintes (CERs). Il établit un contrat de fiabilité entre l'auteur du code et les développeurs qui dépendent de ce code, en assurant que certaines actions critiques soient effectuées correctement. |
System.Runtime.ExceptionServices | Cet espace de noms contient des classes pour la gestion avancée des exceptions, y compris la capacité de capturer, manipuler et déclencher à nouveau des exceptions. |
System.Runtime.InteropServices | Cet espace de noms permet l'interopérabilité avec du code non géré via les services COM et l'invocation de plateformes. Il est essentiel pour interagir avec des bibliothèques natives et d'autres environnements non managés. |
System.Runtime.InteropServices.ComTypes | Cet espace de noms contient des types gérés correspondant aux types utilisés pour l'interopérabilité COM, facilitant la gestion des objets COM dans des environnements gérés. |
System.Runtime.InteropServices.WindowsRuntime | Cet espace de noms permet de gérer l'interopérabilité entre le code géré et le Runtime Windows (WinRT), et permet de créer des types WinRT à partir de code géré. |
System.Runtime.Intrinsics | Cet espace de noms permet de fournir des types utilisés pour manipuler les états des registres dans différents formats pour exploiter les extensions d'ensemble d'instructions. Il est utilisé pour des opérations bas niveau optimisées par des instructions spécifiques au matériel. |
System.Runtime.Intrinsics.X86 | Cet espace de noms permet d'exposer des extensions d'ensemble d'instructions spécifiques aux systèmes x86 et x64. Chaque extension est représentée par une classe distincte, et la compatibilité peut être vérifiée via la propriété IsSupported. |
System.Runtime.Loader | Cet espace de noms permet d'offrir des interfaces et classes permettant aux développeurs de contrôler le comportement de chargement des assemblies à l'exécution, permettant ainsi une gestion personnalisée du chargement dynamique de modules. |
System.Runtime.Remoting | Cet espace de noms permet de fournir des classes pour créer et configurer des applications distribuées. Cet espace de noms est utilisé pour la communication entre des objets répartis sur différents processus ou réseaux. |
System.Runtime.Serialization | Cet espace de noms permet de gérer la sérialisation et la désérialisation des objets, c'est-à-dire la conversion d'objets en une séquence d'octets pour leur entreposage ou transmission, et leur recréation depuis ces données. |
System.Runtime.Serialization.Formatters | Cet espace de noms contient des énumérations et interfaces communes utilisées par les formateurs de sérialisation pour personnaliser et contrôler le processus de sérialisation. |
System.Runtime.Serialization.Formatters.Binary | Cet espace de noms contient la classe BinaryFormatter, utilisée pour la sérialisation et la désérialisation des objets en format binaire. |
System.Runtime.Serialization.Json | Cet espace de noms permet de fournir des classes pour la sérialisation et la désérialisation des objets au format JSON, facilitant ainsi les interactions avec des services et données JSON. |
System.Runtime.Versioning | Cet espace de noms contient des types prennant en charge la gestion de version dans les implémentations .NET côte à côte, permettant à différentes versions d'un même assembly d'exister simultanément. |
System.Security | Cet espace de noms permet de gérer la sécurité au sein du runtime, offrant des classes de base pour les permissions et la gestion des politiques de sécurité. |
System.Security.Authentication | Cet espace de noms contient des énumérations décrivant les paramètres de sécurité d'une connexion, comme les types d'algorithmes de chiffrement, d'échange et de hachage, ainsi que les protocoles SSL pris en charge. |
System.Security.Authentication.ExtendedProtection | Cet espace de noms permet de fournir une protection d'authentification étendue pour les applications, ajoutant une couche supplémentaire de sécurité dans certaines configurations d'authentification. |
System.Security.Claims | Cet espace de noms permet d'implémenter un modèle d'identité basé sur les revendications, où une identité est représentée par un ensemble de revendications décrivant les attributs de l'utilisateur. |
System.Security.Cryptography | Cet espace de noms permet d'offrir des services cryptographiques, y compris le chiffrement et le déchiffrement des données, la génération de nombres aléatoires sécurisés, le hachage, et l'authentification des messages. |
System.Security.Cryptography.X509Certificates | Cet espace de noms contient l'implémentation .NET des certificats Authenticode X.509 v.3, utilisés pour identifier de manière unique et sécurisée un détenteur via une clef privée. |
System.Security.Permissions | Cet espace de noms permet de définir des classes permettant de contrôler l'accès aux opérations et ressources selon des politiques de sécurité prédéfinies. |
System.Security.Principal | Cet espace de noms contient des définitions des objets principaux représentant le contexte de sécurité sous lequel s'exécute du code. Cela inclut la sécurité basée sur les rôles, où un utilisateur peut avoir un rôle défini dans une application ou un système. |
System.Text | Cet espace de noms contient des classes pour représenter des encodages de caractères ASCII et Unicode, ainsi que des classes abstraites pour convertir des blocs de caractères en blocs d'octets et inversement. Il inclut également des classes pour manipuler et formater des objets String sans créer d'instances intermédiaires. |
System.Text.Encodings.Web | Cet espace de noms permet de fournir une classe de base pour les encodages Web (HTML, JavaScript, URL) et des sous-classes pour ces encodages. Il inclut des filtres permettant de n'encoder que certains caractères, plages de caractères, ou points de code. |
System.Text.Json | Cet espace de noms permet d'offrir des fonctionnalités performantes et conformes aux standards pour traiter le JSON. Il permet de sérialiser et désérialiser des objets en texte JSON, avec un support intégré pour l'UTF-8. Il inclut aussi des types pour lire et écrire du texte JSON encodé en UTF-8 et pour créer un modèle DOM en mémoire pour accéder aux éléments JSON. |
System.Text.Json.Serialization | Cet espace de noms contient des classes utilisées pour personnaliser et étendre la sérialisation et la désérialisation des objets en documents JSON à l'aide d'attributs ou de convertisseurs de type. |
System.Text.RegularExpressions | Cet espace de noms permet de fournir des fonctionnalités pour utiliser les expressions régulières, utilisables sur toutes les plateformes prenant en charge .NET. Il inclut aussi la classe RegexStringValidator permettant de vérifier si une chaîne de caractères correspond à un modèle d'expression régulière. |
System.Text.Unicode | Cet espace de noms contient des types permettant de récupérer et de travailler avec des plages de caractères Unicode nommées. |
System.Threading | Cet espace de noms permet de fournir des classes et interfaces permettant la programmation multi-processus léger. Il inclut des classes pour synchroniser les activités des processus léger (Mutex, Monitor, AutoResetEvent,...), une classe ThreadPool pour gérer un bassin de procesuss léger système, et une classe Timer pour exécuter des méthodes de rappel sur des processus léger du bassin de processus léger. |
System.Threading.Channels | Cet espace de noms permet de fournir des structures de données de synchronisation pour passer des données de manière asynchrone entre producteurs et consommateurs. |
System.Threading.Tasks | Cet espace de noms permet de simplifier la programmation désynchronisé et concurrente. Le type principal est Task représentant une opération asynchrone pouvant être annulée, et Task<TResult> pour des tâches retournant une valeur. Il inclut aussi la classe TaskFactory pour créer et démarrer des tâches, et TaskScheduler pour gérer l'ordonnancement des processus léger. |
System.Threading.Tasks.Dataflow | Cet espace de noms permet de fournir un modèle de programmation basé sur les acteurs, permettant la communication de messages en processus pour des tâches de flux de données et de pipeline. |
System.Threading.Tasks.Sources | Cet espace de noms permet de fournir des types pour créer des ValueTask et ValueTask<TResult>, optimisés pour minimiser les allocations. Les interfaces IValueTaskSource et IValueTaskSource<TResult> sont implémentées pour fournir les implémentations de base pour les ValueTask. Ce espace de noms est destiné à des situations spécialisées où la performance est critique. |
System.Timers | Cet espace de noms permet de fournir la composante Timer, permettant de déclencher un événement à des intervalles spécifiés. |
System.Transactions | Cet espace de noms contient des classes permettant de créer et de gérer des transactions (locales ou distribuées). Il permet de participer à des transactions avec plusieurs participants. |
System.Web | Cet espace contient la classe HttpUtility. |
System.Windows.Input | Cet espace de noms contient la gestion des entrées dans Windows Presentation Foundation (WPF), il inclut des classes pour les abstractions de périphériques (souris, clavier, stylet), un gestionnaire d'entrées commun, et le support pour les commandes personnalisées. Certaines classes sont également applicables en dehors de WPF. |
System.Windows.Markup | Cet espace de noms permet de fournir des types pour supporter le langage de balisage XAML. Certaines classes sont spécifiques aux scénarios WPF, tandis que d'autres prennent en charge les services XAML généraux sans nécessiter de référence aux assemblies WPF. |
System.Xml | Cet espace de noms permet d'offrir un support standard pour traiter les fichiers XML, incluant la lecture, l'écriture et la modification de documents XML. |
System.Xml.Linq | Cet espace de noms contient des classes pour LINQ à XML, une interface de programmation en mémoire permettant de manipuler des documents XML de manière efficace et simple. |
System.Xml.Resolvers | Cet espace de noms permet de fournir un support pour préremplir le cache avec des DTD ou des flux XML. |
System.Xml.Schema | Cet espace de noms contient des classes permettant de travailler avec des schémas XML conformes au standard XSD (XML Schema Definition). |
System.Xml.Serialization | Cet espace de noms contient des classes utilisées pour sérialiser des objets en documents ou flux XML. |
System.Xml.XPath | Cet espace de noms permet de fournir des classes pour naviguer et modifier des documents XML selon le modèle de données XQuery 1.0 et XPath 2.0. |
System.Xml.Xsl | Cet espace de noms permet de fournir un support pour les transformations XSLT (Extensible Stylesheet Language Transformations), conformément aux recommandations de la W3C sur XSLT Version 1.0. |
Dernière mise à jour : Mercredi, le 11 septembre 2024