[英]A delegate in C# to VB.NET
我正在嘗試使用NUnit 2.6.4將此工作的.NET2 C#轉換為.NET2 VB.NET
[Test]
public void Test() {
Assert.Throws<Exception>(delegate {
DoSomething(2);
});
}
public void DoSomething(int i) {
throw new Exception();
}
然后進入VB:
<Test> _
Public Sub Test()
Assert.Throws(Of Exception)(Sub() DoSomething(2))
End Sub
Public Sub DoSomething(i As Integer)
Throw New Exception()
End Sub
這適用於.NET4但不適用於.NET2-因為我正在使用匿名方法...但是如何在VB.NET中的.NET2中表達委托
類似於: AddressOf DoSomething(2)
您可以創建一個新的命名方法,而不是使用匿名方法。
Public Sub Test()
Assert.Throws(Of Exception)(AddressOf DoSomethingPassingTwo)
End Sub
Public Sub DoSomethingPassingTwo()
DoSomething(2)
End Sub
Public Sub DoSomething(i As Integer)
Throw New Exception()
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.