Delen via


BC36550: het kenmerk Extensie kan alleen worden toegepast op declaraties Module, Sub of Functie

De enige manier om een gegevenstype in Visual Basic uit te breiden, is door een extensiemethode in een standaardmodule te definiƫren. De extensiemethode kan een Sub procedure of een Function procedure zijn. Alle extensiemethoden moeten worden gemarkeerd met het extensiekenmerk, <Extension()>vanuit de System.Runtime.CompilerServices naamruimte. Desgewenst kan een module met een extensiemethode op dezelfde manier worden gemarkeerd. Er is geen ander gebruik van het extensiekenmerk geldig.

Fout-id: BC36550

Deze fout corrigeren

  • Verwijder het extensiekenmerk.

  • Ontwerp uw extensie opnieuw als een methode die is gedefinieerd in een insluitmodule.

Opmerking

In het volgende voorbeeld wordt een Print methode gedefinieerd voor het String gegevenstype.

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

Zie ook