<Membername> ist nicht CLS-kompatibel und darf in einer CLS-kompatiblen Schnittstelle nicht verwendet werden
Aktualisiert: November 2007
Non-CLS-compliant <membername> is not allowed in a CLS-compliant interface
Eine Eigenschaft, eine Prozedur oder ein Ereignis in einer Schnittstelle ist als <CLSCompliant(True)> markiert, obwohl die Schnittstelle selbst als <CLSCompliant(False)> markiert ist oder nicht markiert ist.
Damit eine Schnittstelle mit der CLS (Common Language Specification) (CLS) kompatibel ist, müssen alle Member der Schnittstelle CLS-kompatibel sein.
Wenn Sie CLSCompliantAttribute auf ein Programmierelement anwenden, legen Sie den isCompliant-Parameter des Attributs auf True oder auf False fest, um die Kompatibilität bzw. Nichtkompatibilität anzugeben. Es gibt keinen Standardwert für diesen Parameter, und Sie müssen einen Wert angeben.
Wenn Sie CLSCompliantAttribute nicht auf ein Element anwenden, wird dieses als nicht kompatibel betrachtet.
Standardmäßig ist diese Meldung eine Warnung. Informationen über das Ausblenden von Warnungen bzw. über die Behandlung von Warnungen als Fehler finden Sie unter Konfigurieren von Warnungen in Visual Basic.
Fehler-ID: BC40033
So beheben Sie diesen Fehler
Wenn CLS-Kompatibilität erforderlich ist und Sie über die Quellcodeverwaltung der Schnittstelle verfügen, markieren Sie die Schnittstelle als <CLSCompliant(True)>, wenn alle Member der Schnittstelle CLS-kompatibel sind.
Wenn CLS-Kompatibilität erforderlich ist und Sie nicht über die Quellcodeverwaltung der Schnittstelle verfügen oder wenn die Schnittstelle nicht die Kompatibilitätsvoraussetzungen erfüllt, definieren Sie diesen Member in einer anderen Schnittstelle.
Wenn dieser Member in der aktuellen Schnittstelle verbleiben muss, entfernen Sie das CLSCompliantAttribute aus der Definition des Members, oder markieren Sie ihn als <CLSCompliant(False)>.
Siehe auch
Konzepte
Schreiben von CLS-kompatiblem Code