Partager via


L'attribut 'Extension' ne peut être appliqué qu'aux déclarations 'Module', 'Sub' ou 'Function'

Mise à jour : novembre 2007

'Extension' attribute can be applied only to 'Module', 'Sub', or 'Function' declarations

La seule façon d'étendre un type de données dans Visual Basic est de définir une méthode d'extension à l'intérieur d'un module standard. La méthode d'extension peut être une procédure Sub ou Function. Toutes les méthodes d'extension doivent être marquées avec l'attribut d'extension, <Extension()>, de l'espace de noms System.Runtime.CompilerServices. Facultativement, un module qui contient une méthode d'extension peut être marqué de la même façon. Aucune autre utilisation de l'attribut d'extension n'est valide.

ID d'erreur : BC36550

Pour corriger cette erreur

  • Supprimez l'attribut d'extension.

  • Reconcevez votre extension en tant que méthode, définie dans un module englobant.

Exemple

L'exemple suivant définit une méthode Print pour le type de données String.

Imports StringUtility
Imports System.Runtime.CompilerServices
Namespace StringUtility
    <Extension()> _
    Module StringExtensions
        <Extension()> _
        Public Sub Print (ByVal str As String)
            Console.WriteLine(str)
        End Sub
    End Module
End Namespace

Voir aussi

Concepts

Application des attributs

Méthodes d'extension (Visual Basic)

Référence

Module, instruction