Arama sistemi başka bir yerden müşterileri SignalR hub
Sunucu ve istemci arasında iletişim kurmak için SignalR hub kurdum. Hub sunucu tarafı kodu bir sınıf Çengel adlı saklanır.cs. İstediğim bir yöntem Çengel tanımlanan arayabilir.benim başvurum her yerinden tüm bağlı istemciler için mesaj yayınlamak için izin cs. Takma yeni bir örneği gibi görünüyor.cs gibi bir şey kullanmak mümkün olacağını ümit etmiştim her istemci/sunucu arama için oluşturulur
var hooking = new Hooking();
hooking.Test();
yöntem Testi ile() Takma tanımlanmış.cs gibi
public static void Test() {
Clients.test()
}
ve istemci tarafı javascript ile
var hooking = $.connection.hooking;
hooking.test = function() { alert("test worked"); };
$.connection.hub.start()
Ne yazık ki Müşteriler statik değil, öyle değil statik bir yöntem açık olarak bu kadar basit değil.
SignalR kaynak kodu bakarak karşısında umut verici görünen bir yöntemi geldim, Hubs.Invoke(string hubName, string method, params object[] args)
, Hubs.Invoke("Hooking", "Test")
gibi bir şey kullanmak isterdim isterdim ama yapamam.
Bu konuda herhangi bir yardım çok mutluluk duyacağız
CEVAP
Bu SignalR 2 için doğru yoldur.x:
var context = GlobalHost.ConnectionManager.GetHubContext<MyHub>();
context.Clients.All.addMessage(message);
Temel olarak, geçerli ana bilgisayar için bağımlılık çözücü kapsamında ele hub için nesne almak için izin verir IConnectionManager
arabirim gidermek için kullanabilirsiniz.
Daha fazla bilgi official documentation bulunabilir.
Nasıl sayfa üzerinde herhangi bir yerd...
Arama "yerel" modül içinde f...
Kayıt veya satır içeriği ile yerine Vi...
Nasıl bir alt dizisi oluşturmak için J...
Olmayan özyinelemeli Derinlik öncelikl...