Члены экземпляров и Me нельзя использовать в лямбда-выражениях в структурах
Обновлен: Ноябрь 2007
Instance members and 'Me' cannot be used within a lambda expression in structures
В структуре было определено лямбда-выражение, которое ссылается на член экземпляра структуры или использует Me. В следующем коде показаны эти две недопустимые ссылки.
Structure Structure1
Public InstanceMember As Integer
Public Function ExampleFun() As Integer
'' The error is caused by use of InstanceMember.
'Dim fun1 = Function() InstanceMember
'' The error is caused by use of Me.
'Dim fun2 = Function() Me.InstanceMember
'Return fun1()
End Function
End Structure
Идентификатор ошибки: BC36638
Исправление данной ошибки
Присвойте член экземпляра локальной переменной и используйте ее в операторе.
Public Function ExampleFunFix() As Integer Dim temp = InstanceMember Dim fun1 = Function() temp Return fun1() End Function