OnConnected和OnDisconnected事件触发两次?
问题描述:
在下面的代码中,当我连接或断开客户端时,OnConnected和Disconnected事件触发两次。如何避免这种情况? 我有所有组件的最后一个版本。OnConnected和OnDisconnected事件触发两次?
Imports Microsoft.AspNet.SignalR
Imports Microsoft.Owin.Cors
Imports Microsoft.Owin.Hosting
Imports Owin
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim url As String = "http://localhost:8080/arc/"
WebApp.Start(url)
End Sub
End Class
Class Startup
Public Sub Configuration(app As IAppBuilder)
app.UseCors(CorsOptions.AllowAll)
app.MapSignalR()
End Sub
End Class
Public Class MyHub
Inherits Hub
Public Sub Send(name As String, message As String)
Clients.All.addMessage(name, message)
End Sub
Public Overrides Function OnConnected() As Task
Debug.Print("Client connected: " + Context.ConnectionId)
Return MyBase.OnConnected()
End Function
Public Overrides Function OnDisconnected(stopCalled As Boolean) As Task
Debug.Print("Client DISconnected: " + Context.ConnectionId)
Return MyBase.OnDisconnected(True)
End Function
End Class
在Vb.net的客户端代码如下:
Imports Microsoft.AspNet.SignalR.Client
Imports System.ComponentModel
Imports Microsoft.AspNet.SignalR.Client.Hubs
Partial Public Class MainWindow
Inherits Window
Implements INotifyPropertyChanged
Public connection As HubConnection = New HubConnection("http://localhost:8080/arc/")
Public myHub As IHubProxy
Private Sub MainWindow_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
DataContext = Me
connection = New HubConnection("http://localhost:8080/arc/")
myHub = connection.CreateHubProxy("myHub")
myHub.On(Of String)("addMessage", AddressOf addMessage)
End Sub
Async Sub btnShowSignal_Click(sender As Object, e As RoutedEventArgs)
Await connection.Start()
End Sub
答
有一天,我的MVC方法解雇了2倍(不signalr,我的网页是)。
我研究,我发现这一点:
从布局(母版)中删除您的图标(在HTML头),如果它与404错误代码来。如果它带有404,请从浏览器的控制台检查您的图标。
我不知道彼此之间是什么关系。但这一天对我来说是个解决方案。
只是一个想法。
+0
Ÿ尝试与其他项目和相同的行为... – SomeOneMore
+0
1 idea> 0 idea –
显示您的客户代码 – Tester
编辑并添加客户代码的问题。谢谢 – SomeOneMore