Ist es möglich, einen Methodentext zur Laufzeit in .NET zu ändern?

Ich weiß, dass es (theoretisch) möglich ist, einen neuen Typ zur Laufzeit zu erstellen, aber ist es möglich, einen Methodenkörper eines vorhandenen Typs zur Laufzeit zu ändern? Mein Plan (wenn ich das zum Laufen bringen kann) ist es, Methoden mit einem benutzerdefinierten Attribut zu versehen und dann zur Laufzeit nach Methoden mit dem Attribut zu suchen und eigenen Code in den Methodentext einzufügen.

Irgendwelche Vorschläge?

Ich nehme an, wenn ich diesen Ansatz nicht zum Laufen bringen kann, könnte ich immer eine virtuelle Methode in einer Basisklasse (mit den Attributen) in Kombination mit einer statischen Factory verwenden, um einen abgeleiteten dynamischen Typ mit meiner zur Laufzeit generierten Methode auszuspucken in der Kinderklasse. Dies wäre allerdings nicht ganz so sauber zu bedienen.

Antworten auf die Frage(5)

Ihre Antwort auf die Frage