85 votes

Comment trouver le nom de la classe enfant à partir de la classe de base ?

Sur run-time à l'intérieur base class Comment trouver le nom de la classe enfant actuelle ?

0 votes

Que signifie "nom de la classe enfantine actuelle" ?

0 votes

Oui, beaucoup d'enfants héritent base class et je veux que le courant qui utilise le base class

0 votes

Si vous voulez connaître la classe réelle, vous pouvez utiliser la fonction is opérateur, par exemple if (this is BaseClass1) { some code here }

143voto

tvanfosson Points 268301

Obtenir le type de l'objet courant, puis son nom.

this.GetType().Name

8 votes

Pour la classe de base, vous pouvez utiliser : this.GetType().BaseType.Name

2 votes

Cela ne semble pas fonctionner pour les classes partielles. Vous obtenez un numéro de type GUID ajouté après le nom de la classe.

13voto

markg Points 219

Essayez ça :

Type type = this.GetType().UnderlyingSystemType;  
String className = type.Name;

7 votes

Bienvenue sur Stack Overflow ! Merci de poster votre réponse ! Veillez à lire le FAQ sur l'autopromotion soigneusement. Notez également qu'il est requis que vous publiez une clause de non-responsabilité chaque fois que vous créez un lien vers votre propre site/produit.

7 votes

Merci Andrew de me l'avoir fait savoir :) mon site de blog n'est qu'une note personnelle parce que j'ai tendance à oublier des choses. il ne s'agit pas de faire de la promotion ou d'obtenir des visites d'utilisateurs. :)

10voto

BFree Points 46421

Si vous appelez this.GetType() vous obtiendrez toujours le type d'exécution actuel, quelle que soit la classe de base dont vous héritez.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X