Lezen in het Engels

Delen via


'<classname>' is niet CLS-compatibel omdat deze is afgeleid van '<baseclassname>', wat niet CLS-compatibel is

Een klasse of interface wordt gemarkeerd als <CLSCompliant(True)> wanneer deze is afgeleid van of implementeert een type dat is gemarkeerd als <CLSCompliant(False)> of niet is gemarkeerd.

Voor een klasse of interface die voldoet aan de cls (Language Independence and Language-Independent Components ), moet de volledige overnamehiërarchie compatibel zijn. Dat betekent dat elk type waarvan het type direct of indirect overgeeft, compatibel moet zijn. Als een klasse een of meer interfaces implementeert, moeten ze allemaal compatibel zijn in hun overnamehiërarchieën.

Wanneer u het CLSCompliantAttribute op een programmeerelement toepast, stelt u de parameter True van isCompliant het kenmerk in op naleving False of niet-naleving. Er is geen standaardwaarde voor deze parameter en u moet een waarde opgeven.

Als u het CLSCompliantAttribute element niet toepast op een element, wordt het beschouwd als niet-compatibel.

Dit bericht is standaard een waarschuwing. Zie Waarschuwingen configureren in Visual Basic voor informatie over het verbergen van waarschuwingen of het behandelen van waarschuwingen als fouten.

Fout-id: BC40026

Deze fout corrigeren

  • Als u CLS-naleving nodig hebt, definieert u dit type binnen een andere overnamehiërarchie of een ander implementatieschema.

  • Als u wilt dat dit type binnen de huidige overnamehiërarchie of het implementatieschema blijft, verwijdert u de uit de CLSCompliantAttribute definitie of markeert u het als <CLSCompliant(False)>.