我又提出了另一个 SignalR 问题,但这一次更具体一些。
我正在构建一个 CMS,这次我真的全力以赴,并且理想地希望 SignalR 充当 API。在过去的 2 年里,我构建了许多 SignalR 应用程序,并且所有应用程序都运行得非常好,但这次我想避免通过 JavaScript 连接到 HUB/Self 主机。
一旦您查看了系统的架构(下图),我将进一步解释一下
查看此图后:http://www.asp.net/signalr/overview/deployment/tutorial-signalr-self-host
它解释了如何设置自托管,以及最重要的是如何访问集线器 IE:
$.connection.hub.url = "http://localhost:8080/signalr";
// Declare a proxy to reference the hub.
var chat = $.connection.myHub;
基本上我想放弃它并避免在 JavaScript 中创建连接。是否可以从外部应用程序连接到 C# 中的集线器?请注意,所有应用程序都将位于同一个 IIS 实例下。
希望这不会太难消化,提前谢谢您!
问候,
最佳答案
好吧,我迟到了,但这对其他人可能有用:
中心:
public class MyHub : Hub
{
private static MyHub _instance;
public static MyHub GetInstance()
{
return _instance;
}
public MyHub()
{
_instance = this;
}
}
以及您需要的地方:
var hub = MyHub.GetInstance();
我不喜欢使用静态变量来公开集线器,但没有找到更好的方法来实现这一点。
关于javascript - 从 C# 中的另一个应用程序连接到 SignalR 自主机集线器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29952899/