Option Strict On требует, чтобы каждый параметр лямбда-выражения объявлялся с предложением As, если его тип не может быть выведен
Обновлен: Ноябрь 2007
Option Strict On requires each lambda expression parameter to be declared with an 'As' clause if its type cannot be inferred
Параметр в лямбда-выражении был объявлен без использования предложения As с включенным Option Strict.
' Not valid when Option Strict is on.
' Dim increment1 = Function (n) n + 1
Предыдущее объявление допустимо, если тип n может быть выведен. Например, если предыдущее лямбда-выражение назначается делегату функции Del:
Delegate Function Del(ByVal p As Integer) As Integer
Теперь тип n может быть выведен из параметра p:
Dim increment2 as Del = Function(n) n + 1
Идентификатор ошибки: BC36642
Чтобы исправить эту ошибку
Добавьте предложение As к объявлению параметра:
Dim increment3 = Function (n As Integer) n + 1