Maison >développement back-end >C++ >C# Reflection peut-il accéder et modifier le code de la méthode ?

C# Reflection peut-il accéder et modifier le code de la méthode ?

Barbara Streisand
Barbara Streisandoriginal
2025-01-15 06:06:43709parcourir

Can C# Reflection Access and Modify Method Code?

La réflexion C# peut-elle révéler le code de la méthode ?

L'API C# Reflection, bien que capable de fournir des informations approfondies sur les informations sur le type d'assembly, présente des limites en matière d'inspection du code de méthode.

Réponse courte :

Reflection (System.Reflection) ne permet pas d'accéder directement au code de la méthode. Il se concentre sur les métadonnées et n'inclut pas les informations de données sous-jacentes telles que la représentation du flux IL du code.

Réponse détaillée :

Bien que la réflexion ne puisse pas récupérer le code de la méthode, la classe ILGenerator de System.Reflection.Emit offre la possibilité d'émettre de l'IL. De plus, MethodInfo.GetMethodBody() peut récupérer le flux binaire IL, mais cela n'est généralement pas utile en soi.

Les bibliothèques externes comme Cecil offrent des fonctionnalités plus complètes pour manipuler le code de méthode, notamment la lecture, la modification, l'ajout et la suppression.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn