<nomemembro> non compatibile con CLS non consentito in un'interfaccia compatibile con CLS

Aggiornamento: novembre 2007

Non-CLS-compliant <membername> is not allowed in a CLS-compliant interface

Una proprietà, una routine o un evento in un'interfaccia viene contrassegnato come <CLSCompliant(True)> quando l'interfaccia stessa è contrassegnata come <CLSCompliant(False)> o non è contrassegnata.

Perché l'interfaccia sia compatibile con Specifiche CLS (Common Language Specification) (CLS), è necessario che siano compatibili tutti i suoi membri.

Quando CLSCompliantAttribute viene applicato a un elemento di programmazione, il parametro isCompliant dell'attributo viene impostato su True o False per indicare la compatibilità o la non compatibilità. L'impostazione predefinita per questo parametro non è disponibile, è necessario quindi specificare un valore.

Se a un elemento non viene applicato CLSCompliantAttribute, l'elemento non sarà considerato compatibile.

Per impostazione predefinita, si tratta di un messaggio di avviso. Per informazioni su come nascondere gli avvisi o considerarli come errori, vedere Configurazione degli avvisi in Visual Basic.

ID errore: BC40033

Per correggere l'errore

  • Se è richiesta la compatibilità con CLS ed è possibile accedere al codice sorgente dell'interfaccia, contrassegnare l'interfaccia come <CLSCompliant(True)> se tutti i membri sono compatibili.

  • Se è richiesta la compatibilità con CLS e non è possibile accedere al codice sorgente dell'interfaccia, o se esso non può essere compatibile, definire il membro all'interno di un'interfaccia differente.

  • Se è necessario mantenere il membro nell'interfaccia corrente, rimuovere CLSCompliantAttribute dalla relativa definizione o contrassegnarlo come <CLSCompliant(False)>.

Vedere anche

Concetti

Scrittura di codice compatibile con CLS

Riferimenti

Istruzione Interface (Visual Basic)