Partager via


BC36550 : l’attribut 'Extension' ne peut être appliqué qu’aux déclarations 'Module', 'Sub' ou 'Function'

La seule façon d’étendre un type de données en Visual Basic consiste à définir une méthode d’extension à l’intérieur d’un module standard. La méthode d’extension peut être une Sub procédure ou une Function procédure. Toutes les méthodes d’extension doivent être marquées avec l’attribut d’extension, <Extension()>à partir de l’espace System.Runtime.CompilerServices de noms. Si vous le souhaitez, 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.

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

Exemple :

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

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