CLSCompliantAttribute Classe

Définition

Indique si un élément de programme est conforme à la spécification CLS (Common Language Specification). Cette classe ne peut pas être héritée.

public ref class CLSCompliantAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)]
public sealed class CLSCompliantAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)]
[System.Serializable]
public sealed class CLSCompliantAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class CLSCompliantAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)>]
type CLSCompliantAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)>]
[<System.Serializable>]
type CLSCompliantAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CLSCompliantAttribute = class
    inherit Attribute
Public NotInheritable Class CLSCompliantAttribute
Inherits Attribute
Héritage
CLSCompliantAttribute
Attributs

Exemples

L’exemple suivant applique un CLSCompliantAttribute à l’assembly entier.

using System;
    [assembly: CLSCompliant(true)]

La déclaration suivante génère un avertissement de conformité CLS, car le type UInt32 n’est pas spécifié dans la spécification CLS.

public int SetValue(UInt32 value);

Si la déclaration est marquée avec un CLSCompliantAttribute , aucun avertissement ou erreur du compilateur n’est généré.

[CLSCompliant(false)]
 public int SetValue(UInt32 value);

Remarques

L' CLSCompliantAttribute attribut est utilisé pour indiquer si un élément de programme particulier est conforme au Common Language Specification (CLS), qui définit les fonctionnalités que tout langage qui cible .net doit prendre en charge. La conformité CLS est principalement une préoccupation pour les développeurs de bibliothèques qui souhaitent s’assurer que leurs bibliothèques sont accessibles dans n’importe quel langage qui cible .NET. Pour plus d’informations, consultez indépendance du langage et composants de Language-Independent.

Vous pouvez appliquer l' CLSCompliantAttribute attribut aux éléments de programme suivants : assembly, module, classe, struct, enum, constructeur, méthode, propriété, champ, événement, interface, délégué, paramètre et valeur de retour. Toutefois, la notion de conformité CLS n’est significative que pour les assemblys, les modules, les types et les membres de types, et non les parties d’une signature de membre. Par conséquent, CLSCompliantAttribute est ignoré lorsqu’il est appliqué à des éléments de programme de paramètre ou de valeur de retour.

Si aucun CLSCompliantAttribute n’est appliqué à un élément de programme, par défaut :

  • L’assembly n’est pas conforme CLS.

  • Le type est conforme CLS uniquement si son type englobant ou son assembly est conforme CLS.

  • Le membre d’un type est conforme CLS uniquement si le type est conforme CLS.

Si un assembly est marqué comme conforme CLS, tout type exposé publiquement dans l’assembly qui n’est pas conforme CLS doit être marqué avec CLSCompliantAttribute à l’aide d’un false argument. De même, si une classe est marquée comme conforme CLS, vous devez marquer individuellement tous les membres qui ne sont pas conformes à CLS. Tous les membres non conformes doivent fournir des alternatives conformes CLS correspondantes.

les attributs qui sont appliqués aux assemblys ou aux modules doivent se produire après les using Imports clauses C# (en Visual Basic) et avant le code.

Pour plus d’informations sur l’utilisation d’attributs, consultez attributs.

Notes

le compilateur Microsoft Visual Basic actuel ne génère pas intentionnellement un avertissement de conformité CLS, toutefois, une version ultérieure du compilateur émettra cet avertissement.

Constructeurs

CLSCompliantAttribute(Boolean)

Initialise une instance de la classe CLSCompliantAttribute avec une valeur Boolean indiquant si l'élément de programme indiqué est conforme CLS.

Propriétés

IsCompliant

Obtient la valeur Boolean indiquant si l'élément de programme indiqué est conforme CLS.

TypeId

Lors de l'implémentation dans une classe dérivée, obtient un identificateur unique pour l'objet Attribute.

(Hérité de Attribute)

Méthodes

Equals(Object)

Retourne une valeur qui indique si cette instance est égale à un objet spécifié.

(Hérité de Attribute)
GetHashCode()

Retourne le code de hachage de cette instance.

(Hérité de Attribute)
GetType()

Obtient le Type de l'instance actuelle.

(Hérité de Object)
IsDefaultAttribute()

En cas de substitution dans une classe dérivée, indique si la valeur de cette instance est la valeur par défaut pour la classe dérivée.

(Hérité de Attribute)
Match(Object)

En cas de substitution dans une classe dérivée, retourne une valeur indiquant si cette instance équivaut à un objet spécifié.

(Hérité de Attribute)
MemberwiseClone()

Crée une copie superficielle du Object actuel.

(Hérité de Object)
ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

Implémentations d’interfaces explicites

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch.

(Hérité de Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Récupère les informations de type pour un objet, qui peuvent être utilisées pour obtenir les informations de type d'une interface.

(Hérité de Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1).

(Hérité de Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fournit l'accès aux propriétés et aux méthodes exposées par un objet.

(Hérité de Attribute)

S’applique à

Voir aussi