Ich habe eine Schnittstelle mit Eigenschaften:
%Vor%Dann setze ich es um:
%Vor% Aber wenn ich auf AutoDetachOnFinished
innerhalb derselben Klasse zugreifen muss, erscheint ein Compilerfehler:
Die Fehlermeldung:
14 'MEngine.Entities.EntityModifier.SingleValueEntityModifier' tut dies enthält keine Definition für 'AutoDetachOnFinished' und keine Erweiterung Methode 'AutoDetachOnFinished' akzeptiert ein erstes Argument vom Typ 'MEngine.Entities.EntityModifier.SingleValueEntityModifier' könnte sein gefunden (fehlt eine using-Direktive oder eine Assembly Referenz?)
Ich habe 2 Fragen:
IEntityModifier.
s lösche (also würde IEntityModifier.Update
zu Update
werden, auf jede implementierte Methode angewendet werden)? AutoDetachOnFinished
? Sie haben diese als explizite Schnittstellenimplementierungen implementiert, was bedeutet, dass Sie nur darauf zugreifen können durch eine Variable vom Typ interface - IEntityModifier
.
Entweder tun Sie das:
%Vor%oder entfernen Sie den Namen der Schnittstelle aus der Implementierung:
%Vor%Weil Sie die Schnittstelle explizit implementieren.
%Vor%Sie müssen auf die Schnittstelle umschalten, um auf explizite Implementierungen zugreifen zu können. Vielleicht nicht was du willst. Entfernen Sie also den Schnittstellennamen aus der Implementierung
%Vor%Konvertieren Sie this.AutoDetachOnFinished in das Objekt vom Typ IEntityModifier, während Sie eine explizite Schnittstellenimplementierung durchführen. hier einige Erklärungen.
%Vor%