Freigeben über


BC36550: 'Extension'-Attribut kann nur auf Deklarationen 'Module', 'Sub' oder 'Function' angewendet werden.

Die einzige Möglichkeit zum Erweitern eines Datentyps in Visual Basic besteht darin, eine Erweiterungsmethode innerhalb eines Standardmoduls zu definieren. Die Erweiterungsmethode kann eine Sub Prozedur oder eine Function Prozedur sein. Alle Erweiterungsmethoden müssen mit dem Erweiterungsattribut aus <Extension()>dem System.Runtime.CompilerServices Namespace gekennzeichnet werden. Optional kann ein Modul, das eine Erweiterungsmethode enthält, auf die gleiche Weise gekennzeichnet werden. Es ist keine andere Verwendung des Erweiterungsattributs gültig.

Fehler-ID: BC36550

So beheben Sie diesen Fehler

  • Entfernen Sie das Erweiterungsattribut.

  • Entwerfen Sie Die Erweiterung als Methode neu, die in einem eingeschlossenen Modul definiert ist.

Beispiel

Im folgenden Beispiel wird eine Print Methode für den String Datentyp definiert.

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

Siehe auch