Ich muss die Gleichheit zwischen zwei MethodInfos überprüfen. Sie sind eigentlich genau die gleiche MethodInfo mit der Ausnahme des ReflectedType (das heißt, der DeclaringType ist derselbe und die Methoden sollten eigentlich denselben Body haben). Es gibt eine Reihe von Möglichkeiten, dies zu tun, aber ich suche nach dem effizientesten.
Im Moment habe ich:
%Vor%Das ist ziemlich teuer, also frage ich mich, ob es einen besseren Weg gibt ...
Sollte ich stattdessen die beiden Methodenkörper vergleichen? zB.
%Vor%Danke.
Würde den MetadataToken und Modul Hilfe?
Die Dokumentation von MetadataToken beschreibt es wie folgt: "Ein Wert, der in Kombination mit Modul ein Metadatenelement eindeutig identifiziert."
Bisher habe ich herausgefunden, dass es für den Vergleich von MemberInfo-Instanzen mit ReflectionType-Ausdrücken funktioniert. Aber ich habe es nicht für Fälle wie generische Methodendefinitionen getestet.
Dieser Code funktioniert, wenn Sie versuchen, die Klassen- und Schnittstellenmethode gleich zu setzen:
%Vor%Tags und Links .net c# reflection