Avertissement du compilateur (niveau 1) CS3018
Impossible de marquer 'type' comme conforme CLS car il est membre du type non conforme CLS 'type'
Cet avertissement se produit si une classe imbriquée avec l’attribut CLSCompliant défini sur true
est déclarée comme membre d’une classe déclarée avec l’attribut CLSCompliant défini sur false
. Cela n’est pas autorisé car une classe imbriquée ne peut pas être conforme CLS si elle est membre d’une classe externe qui n’est pas conforme CLS. Pour remédier à cet avertissement, supprimez l’attribut CLSCompliant de la classe imbriquée ou remplacez true
par false
. Pour plus d’informations sur la conformité CLS, consultez Indépendance du langage et composants indépendants du langage.
L’exemple suivant génère l’avertissement CS3018.
// CS3018.cs
// compile with: /target:library
using System;
[assembly: CLSCompliant(true)]
[CLSCompliant(false)]
public class Outer
{
[CLSCompliant(true)] // CS3018
public class Nested {}
// OK
public class Nested2 {}
[CLSCompliant(false)]
public class Nested3 {}
}
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :