Örnek üyeleri ve 'Me' yapılardaki bir lambda ifadesi içinde kullanılamaz

Bir yapının içinden, yapısının bir örnek üyesine başvuran veya kullanan Mebir lambda ifadesi tanımlamış olursunuz. Aşağıdaki kodda bu iki geçersiz başvuru gösterilmektedir.

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  

Hata Kimliği: BC36638

Bu hatayı düzeltmek için

  • Örnek üyesini yerel bir değişkene atayın ve deyiminizdeki yerel değişkeni kullanın.
Public Function ExampleFunFix() As Integer  
    Dim temp = InstanceMember  
    Dim fun1 = Function() temp  
    Return fun1()  
End Function  

Ayrıca bkz.