Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte. |
Traduction
Source
|
Type.GetProperties, méthode
Retourne toutes les propriétés publiques du Type en cours.
Assembly : mscorlib (dans mscorlib.dll)
Valeur de retour
Type : System.Reflection.PropertyInfo[]Tableau d'objets PropertyInfo représentant toutes les propriétés publiques du Type en cours.
ou
Tableau vide du type PropertyInfo si le Type en cours n'a pas de propriété publique.
Implémentations
_Type.GetProperties()Une propriété est considérée comme publique par rapport à la réflexion si au moins l'un de ses accesseurs est public. Sinon, la propriété est considérée comme privée, et vous devez utiliser BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Static (en Visual Basic, combinez les valeurs à l'aide d' Or) pour l'obtenir.
La méthode GetProperties ne retourne pas les propriétés dans un ordre spécifique, par exemple par ordre alphabétique ou par ordre de déclaration. Votre code ne doit pas être fonction de l'ordre dans lequel les propriétés sont retournées, car cet ordre varie.
Le tableau suivant indique les membres d'une classe de base qui sont retournés par les méthodes Get lors de la réflexion sur un type.
|
Type de membre |
Static |
Non statique |
|---|---|---|
|
Constructeur |
Non |
Non |
|
Champ |
Non |
Oui. Un champ est toujours masqué-par-nom-et-signature. |
|
Événement |
Non applicable |
La règle du système de type commun (CTS, Common Type System) est que l'héritage est le même que celui des méthodes qui implémentent la propriété. La réflexion traite les propriétés comme masquées-par-nom-et-signature. Voir la remarque 2 ci-dessous. |
|
Méthode |
Non |
Oui. Une méthode (à la fois virtuelle et non virtuelle) peut être masquée par nom ou masquée-par-nom-et-signature. |
|
De type imbriqué |
Non |
Non |
|
Propriété |
Non applicable |
La règle du système de type commun (CTS, Common Type System) est que l'héritage est le même que celui des méthodes qui implémentent la propriété. La réflexion traite les propriétés comme masquées-par-nom-et-signature. Voir la remarque 2 ci-dessous. |
-
Masquer-par-nom-et-signature prend en compte toutes les parties de la signature, y compris les modificateurs personnalisés, les types de retour, les types de paramètres, les sentinelles et les conventions d'appel non managées. Il s'agit d'une comparaison binaire.
-
Pour la réflexion, les propriétés et événements sont masqués-par-nom-et-signature. Si une propriété a un accesseur get et set dans la classe de base, mais si la classe dérivée n'a qu'un accesseur get, la propriété de la classe dérivée masque la propriété de la classe de base et vous ne pourrez pas accéder à l'accesseur Set sur la classe de base.
-
Les attributs personnalisés ne font pas partie du système de type commun (CTS, Common Type System).
Si le T:System.Type actuel représente un type générique construit, cette méthode retourne les objets PropertyInfo avec les paramètres de type remplacés par les arguments de type appropriés.
Si le Type actuel représente un paramètre de type dans la définition d'un type ou d'une méthode générique, cette méthode recherche les propriétés de la contrainte de classe.
L'exemple suivant illustre l'utilisation de la méthode GetProperties.
PropertyInfo[] myPropertyInfo; // Get the properties of 'Type' class object. myPropertyInfo = Type.GetType("System.Type").GetProperties(); Console.WriteLine("Properties of System.Type are:"); for (int i = 0; i < myPropertyInfo.Length; i++) { Console.WriteLine(myPropertyInfo[i].ToString()); }
Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2
Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.