Extension methods can be defined only in modules

This error occurs when an extension method has been defined outside a module. In Visual Basic, all extension methods must be defined within standard modules.

Error ID: BC36551

To correct this error

  • Place the extension method in a module.

Example

The following example extends the String class, adding a Print method.

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

See Also

Concepts

Application of Attributes

Extension Methods (Visual Basic)

Reference

Module (Visual Basic)

Module Statement