你如何在vb.net中像c#一样内联代理?

wus*_*her 20 vb.net

是否可以像在c#中一样在vb.net中创建内联委托?

例如,我希望能够像这样内联做一些事情:

myObjects.RemoveAll(delegate (MyObject m) { return m.X >= 10; });
Run Code Online (Sandbox Code Playgroud)

只在VB中,不必做这样的事情

myObjects.RemoveAll(AddressOf GreaterOrEqaulToTen) 

Private Function GreaterOrEqaulToTen(ByVal m as MyObject)
    If m.x >= 10 Then 
         Return true
    Else
         Return False
    End If
End Function
Run Code Online (Sandbox Code Playgroud)

- 编辑 - 我应该提到我仍在使用.net 2.0,所以我将无法使用lambdas.

Bla*_*ael 27

myObjects.RemoveAll(Function(m As MyObject) m.X >= 10)
Run Code Online (Sandbox Code Playgroud)

请参阅MSDN上的Lambda表达式


Sha*_*awn 7

尝试:

myObjects.RemoveAll(Function(m) m.X >= 10)
Run Code Online (Sandbox Code Playgroud)

这适用于3.5,不确定2.0语法.