Mono.cecil: Anrufgenerische Basisklasse-Methode von der anderen Montage anrufen
-
12-11-2019 - |
Frage
Ich verfolge meine frühere Frage: mono.Cil: Call Base Class 'Methode von anderen Baugruppen .
Ich mache dasselbe, aber wenn meine Basisklasse generisch ist, funktioniert es nicht.
generasacodicetagpre.
es wächtt den folgenden Code: generasacodicetagpre.
statt generasacodicetagpre.
Was ist da, um sich zu ändern?
Lösung
In Ihrem vorherigen Beitrag geben Sie an, dass Sie Code verwenden, z. B.: generasacodicetagpre.
Natürlich ist dies nicht für Generika geeignet:
Wenn Sie mit dem generierten .basetype die generische Instantiationsinformationen verlieren.Sie müssen den entsprechenden Methodenaufruf mit den ordnungsgemäßen generischen Informationen vom Basistyp neu erstellen.
Um die Dinge zu vereinfachen, nutzen wir die folgenden Methoden, die aus der Cecil-Test-Suite aufgenommen wurden: generasacodicetagpre.
Mit diesen können Sie Ihren Code umschreiben als: generasacodicetagpre.