Non è possibile usare membri di istanza e 'Me' in un'espressione lambda delle strutture

All'interno di una struttura è stata definita un'espressione lambda che fa riferimento a un membro di istanza della struttura o usa Me. L'esempio seguente mostra due riferimenti non validi.

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  

ID errore: BC36638

Per correggere l'errore

  • Assegnare il membro di istanza a una variabile locale e usare la variabile locale nell'istruzione.
Public Function ExampleFunFix() As Integer  
    Dim temp = InstanceMember  
    Dim fun1 = Function() temp  
    Return fun1()  
End Function  

Vedi anche