C# 将信号器与CQR和事件源一起使用
我将CQR与EventSourcing一起使用。 当在所有打开的浏览器中出现特定事件时,我必须使用signar来更新网格。 因此,一旦发生特定事件,我必须将数据推送到所有客户端 当前,当用户手动刷新页面时,将触发查询,这将提取数据,但我必须在不使用Signal手动刷新的情况下提取数据。C# 将信号器与CQR和事件源一起使用,c#,signalr,cqrs,signalr-hub,event-sourcing,C#,Signalr,Cqrs,Signalr Hub,Event Sourcing,我将CQR与EventSourcing一起使用。 当在所有打开的浏览器中出现特定事件时,我必须使用signar来更新网格。 因此,一旦发生特定事件,我必须将数据推送到所有客户端 当前,当用户手动刷新页面时,将触发查询,这将提取数据,但我必须在不使用Signal手动刷新的情况下提取数据。 我是SignalR的新手,我可以获得实现相同功能的示例代码/参考吗?首先,您必须创建一个Hub类,以便客户端可以连接到 然后,在事件处理程序中执行以下操作: var-hubContext=GlobalHost.C
我是SignalR的新手,我可以获得实现相同功能的示例代码/参考吗?首先,您必须创建一个
Hub
类,以便客户端可以连接到
然后,在事件处理程序中执行以下操作:
var-hubContext=GlobalHost.ConnectionManager.GetHubContext();
hubContext.Clients.All.callJavaScriptFunction(参数)代码>
这样,当事件处理程序被执行时,signer将使用您提供的数据调用您想要的客户机方法
您还必须从客户端创建正确的连接,并定义callJavaScriptFunction
注意:如果您正在使用依赖项注入,您可能会在GlobalHost
中看到非常不稳定的行为。如果是这样,请告诉我
希望这有帮助
祝你好运 首先,必须创建一个Hub
类,以便客户端可以连接到
然后,在事件处理程序中执行以下操作:
var-hubContext=GlobalHost.ConnectionManager.GetHubContext();
hubContext.Clients.All.callJavaScriptFunction(参数)代码>
这样,当事件处理程序被执行时,signer将使用您提供的数据调用您想要的客户机方法
您还必须从客户端创建正确的连接,并定义callJavaScriptFunction
注意:如果您正在使用依赖项注入,您可能会在GlobalHost
中看到非常不稳定的行为。如果是这样,请告诉我
希望这有帮助
祝你好运 您可以阅读有关此主题的内容
还有一个关于CQS+ES和信号器的“基本实验”的例子
希望这对您有所帮助您可以阅读有关此主题的内容
还有一个关于CQS+ES和信号器的“基本实验”的例子
希望这有帮助我已经看过了您提供的解决方案,但是当我们更改更改描述时,它并没有反映所有打开的浏览器,这是通过signalR预期的。您是对的,但这是DTO映射中的一个错误,与signalR无关。谢谢,当然可以。我尚未管理该事件(这是一个示例应用程序),但您可以在console.log中看到该事件已广播到所有连接的客户端。如果您更新解决方案或告诉我步骤,以便广播所有事件并相应更新所有浏览器上的所有值,我们将不胜感激。我已尝试在现有项目中使用此选项,但我遇到以下异常“[HttpException]:未找到路径';/signer/hubs';的控制器,或者未实现IController。”您似乎错过了。SignalR是作为OWIN模块实现的,因此您需要它来正确启动SignalR我已经看过了您提供的解决方案,但是当我们更改ChangeDescription时,它并没有反映所有打开的浏览器,这是通过SignalR预期的。您是对的,但这是DTO映射中的一个错误,与SignalR无关。谢谢,当然可以。我尚未管理该事件(这是一个示例应用程序),但您可以在console.log中看到该事件已广播到所有连接的客户端。如果您更新解决方案或告诉我步骤,以便广播所有事件并相应更新所有浏览器上的所有值,我们将不胜感激。我已尝试在现有项目中使用此选项,但我遇到以下异常“[HttpException]:未找到路径';/signer/hubs';的控制器,或者未实现IController。”您似乎错过了。SignalR是作为OWIN模块实现的,所以您需要它来正确启动SignalR