TypeLoadException-Fehler: Implementierung der Methode fehlt trotz Existenz
Ein System.TypeLoadException
, der besagt, dass einer Methode (z. B. „SetShort“) in einem Typ (z. B. „DummyItem“) eine Implementierung fehlt, obwohl die Methode vorhanden ist, ist ein häufiges Problem, das auf Nichtübereinstimmungen der Assemblyversionen zurückzuführen ist.
Dies tritt häufig auf, wenn eine Klasse eine Schnittstelle aus einer separaten Assembly implementiert. Wenn Sie die Methode sowohl zur Schnittstelle als auch zur implementierenden Klasse hinzufügen, aber die implementierende Assembly neu kompilieren, ohne den Verweis auf die neuere Schnittstellenassembly zu aktualisieren, sieht der Compiler die Methode in der Klasse, die Laufzeit jedoch nicht Finden Sie die richtige Schnittstellendefinition. Die Methode existiert, aber der Link ist defekt.
Die Lösung ist ein kompletter Neuaufbau. Bereinigen Sie die Ordner bin
und obj
Ihres Projekts gründlich und erstellen Sie dann Ihre gesamte Lösung neu. Dadurch wird eine Aktualisierung aller Assembly-Referenzen erzwungen, um sicherzustellen, dass jede Assembly die richtigen, aktualisierten Versionen ihrer Abhängigkeiten verwendet, wodurch der Versionskonflikt gelöst wird.
Das obige ist der detaillierte Inhalt vonWarum zeigt meine TypeLoadException „Keine Implementierung' an, obwohl die Methode vorhanden ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!