1

メソッドのパラメーターでアクションを実行するコードをいくつか書きました。

_myService.MyMethod(userId, profileId, Sub(message As EventArgs) _eventAggregator.SendMessage(message))

これは呼び出されているメソッドです:

Public Sub MyMethod(userId As Guid, profileId As Guid, ByVal action As Action(Of EventArgs))
    Dim proxy = BuildProxy()

    AddHandler proxy.MyMethodCompleted, Sub(o, e) action(e)

    Using New OperationContextScope(proxy.InnerChannel)
        Dim request = New MyMethodRequest() With {.gebruikerId = userId, .omgevingsId = omgevingId}
        proxy.MyMethodAsync(request)
    End Using
End Sub

ここで、サービス メソッドに渡された Sub を拡張して、以下を含めます。

_myService.MyMethod(userId, profileId, Sub(message As EventArgs) _eventAggregator.SendMessage(message)
_localVariable = e.Result
End Sub)

これは明らかに機能しません。これは可能ですか?

4

1 に答える 1

1

もう見つけた。C# から vb.net への切り替えは必ずしも簡単ではありません ;)

_myService.MyMethod(userId, profileId, Sub(message As EventArgs) 
    _eventAggregator.SendMessage(message)
    _localVariable = e.Result
    End Sub)

私のサブの後に次の行を打たなければなりませんでした....

于 2013-02-21T09:06:08.510 に答える