Option Strict On requiere que los parámetros de la expresión lambda se declaren con una cláusula 'As' si no se puede inferir su tipo.

Se ha declarado un parámetro en una expresión lambda sin usar una cláusula As , con Option Strict activado.

' Not valid when Option Strict is on.  
' Dim increment1 = Function (n) n + 1  

La declaración anterior es válida si se puede deducir el tipo de n . Por ejemplo, si va a asignar la expresión lambda anterior a un delegado de función, Del:

Delegate Function Del(ByVal p As Integer) As Integer  

Ahora el tipo de n puede deducirse a partir del parámetro p:

Dim increment2 as Del = Function(n) n + 1  

Identificador de error: BC36642

Para corregir este error

  • Agregar una cláusula As a la declaración de parámetro:

    Dim increment3 = Function (n As Integer) n + 1  
    

Consulte también