Partager via


Le type '<NomType1>' ne peut pas être marqué comme conforme CLS, car son type conteneur '<NomType2>' n'est pas conforme CLS

Mise à jour : novembre 2007

Type '<typename1>' cannot be marked CLS-compliant because its containing type '<typename2>' is not CLS-compliant

Une classe ou une interface est marquée comme <CLSCompliant(True)> lorsqu'elle est imbriquée dans un type qui est marqué comme <CLSCompliant(False)> ou qui n'est pas marqué.

Pour qu'une classe ou une interface soit conforme au Spécification CLS (Common Language Specification) (CLS), toute sa hiérarchie de relation contenant-contenu doit être conforme. Cela signifie que chaque type dans lequel elle est imbriquée doit être conforme.

Lorsque vous appliquez CLSCompliantAttribute à un élément de programmation, vous affectez au paramètre isCompliant de l'attribut la valeur True ou False pour indiquer la conformité ou la non-conformité. Il n'existe pas de valeur par défaut pour ce paramètre et vous devez fournir une valeur.

Si vous n'appliquez pas CLSCompliantAttribute à un élément, il est considéré comme étant non conforme.

Par défaut, ce message est un avertissement. Pour plus d'informations sur le masquage des avertissements ou le traitement des avertissements en tant qu'erreurs, consultez Configuration d'avertissements en Visual Basic.

ID d'erreur : BC40030

Pour corriger cette erreur

  • S'il est nécessaire d'avoir la conformité CLS, définissez ce type dans une hiérarchie de relation contenant-contenu différente.

  • S'il doit rester dans sa hiérarchie de relation contenant-contenu actuelle, supprimez l'CLSCompliantAttribute de sa définition ou marquez-le comme <CLSCompliant(False)>.

Voir aussi

Concepts

Écriture d'un code conforme CLS