Chúng ta có thể tạo nhiều hub cho nhiều thứ khác nhau và để kết nối với mỗi hub, chúng ta có thể tạo nhiều hub phía máy khách với kết nối chia sẻ. trung tâm. Bây giờ, vấn đề phát sinh rằng phương thức hub được kết nối không tăng lên trên mỗi mã phía máy chủ trung tâm.Phương thức OnConnected không được gọi là SignalR khi tôi sử dụng kết nối chia sẻ trong nhiều hub
public class Hub1 : Hub
{
public override Task OnConnected()
{
return base.OnConnected();
}
}
public class Hub2 : Hub
{
public override Task OnConnected()
{
return base.OnConnected();
}
}
để nói, trên các mặt hàng i tạo hub1 và hub2 với các phương pháp phía khách hàng được xác định trên cả trung tâm, sau đó chỉ là một trong các trung tâm phương pháp onConnected được gọi về phía máy chủ. Nếu tôi tạo các hub ở phía máy khách với các kết nối riêng thì phương thức OnConnected sẽ được gọi. Vì vậy, có bất kỳ công việc khác xung quanh nếu tôi muốn sử dụng cùng một kết nối cho mỗi trung tâm nhưng cũng muốn nâng cao sự kiện kết nối của các trung tâm riêng biệt.
Thậm chí, nếu kết nối được chia sẻ giữa các hub? –
Có. Đó là thực hiện hiện tại. Nếu máy khách không đăng ký bất kỳ sự kiện nào của hub, không cần phải tạo (các) đối tượng hub sẽ không bao giờ được sử dụng. Đây là hành vi trong trường hợp máy khách javascript. .NET client sẽ luôn tạo kết nối độc lập với việc đăng ký các sự kiện hoặc không. Tôi sẽ chỉnh sửa câu trả lời để cung cấp thêm thông tin. – DDan
Thật kỳ lạ, nhưng là điểm tốt. – Jacob