Compartir a través de


BC36550: el atributo 'Extension' solo se puede aplicar a las declaraciones 'Module', 'Sub' o 'Function'

La única manera de extender un tipo de datos en Visual Basic es definir un método de extensión dentro de un módulo estándar. El método de extensión puede ser un Sub procedimiento o un Function procedimiento. Todos los métodos de extensión deben marcarse con el atributo de extensión , <Extension()>, desde el System.Runtime.CompilerServices espacio de nombres . Opcionalmente, un módulo que contiene un método de extensión se puede marcar de la misma manera. Ningún otro uso del atributo de extensión es válido.

Identificador de error: BC36550

Para corregir este error

  • Quite el atributo de extensión.

  • Rediseñe la extensión como un método, definido en un módulo envolvente.

Ejemplo

En el ejemplo siguiente se define un Print método para el tipo de String datos.

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

Consulte también