C # statique "ceci"
Est-il possible en C# static méthode pour désigner le Type de la méthode est définie dans?
Dans une méthode d'instance, vous pouvez déterminer le type par:
public void Foo()
{
Type type = this.GetType();
}
comment pourrait-elle ressembler dans une méthode statique?
public static void Bar()
{
Type type = ....?
}
Mise à jour: Désolé, la clarification nécessaire: je sais que le typeof(...)
fonctionnalité. Je suis à la recherche pour un mot clé ou un code qui me donne le Type sans explicitement référence le nom de la classe.
Mise à jour: en plus de Développeur de l'Art de la réponse, qui fait exactement ce que je cherchais, il y a un moyen plus simple?
source d'informationauteur chiccodoro
Vous devez vous connecter pour publier un commentaire.
Ici, vous allez:
Edit: mis à jour pour corriger l'erreur - DeclaringType est une propriété.
Vous pouvez également utiliser la stacktrace
Capitaine Évident, je le sais.
Pourquoi n'utilisez-vous pas
typeof
?Ou comme Développeur de l'Art l'a suggéré, vous pourriez le faire à l'aide de la réflexion, mais il sera plus lent.
Vous pouvez utiliser
Une manière très inhabituelle serait d'utiliser une StackTrace, en prenant le Type de la dernière image...
C'est un peu compliqué, mais je pense que vous pouvez aussi aller la route d'un singleton modèle de type
Si la classe est une forme, et c'est ouvert (vous avez besoin du nom de la forme);