Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
'<classname>' is not CLS-compliant because the interface '<interfacename>' it implements is not CLS-compliant
Una classe o un'interfaccia viene contrassegnata come <CLSCompliant(True)> quando deriva o implementa un tipo contrassegnato come <CLSCompliant(False)> o non contrassegnato.
Perché una classe o un'interfaccia sia compatibile con Specifiche CLS (Common Language Specification) (CLS), è necessario che sia compatibile tutta la gerarchia di ereditarietà. In altri termini, è necessario che sia compatibile ogni tipo da cui si eredita, direttamente o indirettamente. Analogamente, se una classe implementa una o più interfacce, è necessario che queste ultime siano tutte compatibili per l'intera gerarchia di ereditarietà.
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: BC40029
Per correggere l'errore
Se è necessaria la compatibilità con CLS, definire il tipo in una diversa gerarchia di ereditarietà o in un diverso schema di implementazione.
Se è necessario mantenere la gerarchia di ereditarietà o lo schema di implementazione correnti del tipo, rimuovere CLSCompliantAttribute dalla relativa definizione o contrassegnarlo come <CLSCompliant(False)>.