Итак, на этой неделе я публиковал справку по API с асинхронными вызовами. Вы можете просмотреть CODE здесь: C # процедура асинхронного события не запускается
Немного покопавшись, я обнаружил, что API написан на VB.NET, и создал пример VB.NET, и угадайте, что. , , асинхронные вызовы работают как шарм.
Итак, теперь мне нужно выяснить, почему вызовы не запускаются в коде C #, который у меня есть. API, написанный на VB, действительно не должен иметь значения, но, опять же, код VB.NET работает, а мой C # - нет. Есть ли проблема с обработчиком событий и как он объявляется, из-за чего он не срабатывает?
ОБНОВЛЕНИЕ VB Код добавлен
Imports ClientSocketServices
Imports DHS_Commands
Imports DHS
Imports Utility
Imports SocketServices
Class Window1
Public WithEvents AppServer As New ClientAppServer
Public Token As LoginToken
Private Sub login()
Dim handler As New LoginHandler
Token = handler.RequestLogin("admin", "admin", localPort:=12000, serverAddress:="127.0.0.1", serverLoginPort:=11000, clienttype:=LoginToken.eClientType.Client_Admin, timeoutInSeconds:=20)
If Token.Authenticated Then
AppServer = New ClientAppServer(Token, True)
AppServer.RetrieveCollection(GetType(Gateways))
End If
End Sub
Private Sub ReceiveMessage(ByVal rr As RemoteRequest) Handles AppServer.ReceiveRequest
If TypeOf (rr.TransferObject) Is Gateways Then
MsgBox("dd")
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
login()
End Sub
End Class