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 dans un module standard. La méthode d’extension peut être une procédure Sub ou une procédure 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. Un module contenant une méthode d’extension peut éventuellement être marqué de la même manière. 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 comme 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