我正在寻找一种首先在我的存储库类中公开事件的方法,并在我的信号中心注册到该事件,例如,如果将用户添加到"我的应用程序",则所有连接的用户都将收到通知。我在后端使用 asp.net Mvc。这样做的推荐方法是什么,我应该从哪里开始?
如果要通知其他客户端,只需在所有连接的客户端上执行消息即可。
即:
class MyHub : Hub
{
public void AddUserToApplication()
{
...Your logic to add your user...
Clients.All.newUserInApp(); // newUserInApp would then have to be defined on the client.
}
}
如果您想在中心之外执行此类行为,即在计时器中,您可以通过以下方式访问集线器"客户端"属性:
IHubContext context = GlobalHost.ConnectionManager.GetHubContext<MyHub>();
因此,您可以执行以下操作:
context.Clients.All.newUserInApp();