Sup*_*JMN 3 .net c# signalr signalr-hub
我希望我的 SignalR 服务器每 n 秒更新一次仪表板。我现在正在使用这个:
public class MyHub : Hub
{
public override Task OnConnectedAsync()
{
Observable.Interval(TimeSpan.FromSeconds(0.5)).Subscribe(l =>
{
var alt = CalcAltitude(l);
SendMessage(alt);
});
return Task.CompletedTask;
}
private void SendMessage(double alt)
{
Clients.All.SendAsync("SendAction", new Status() {Altitude = alt});
}
private double CalcAltitude(long l)
{
return 100 * Math.Sin((double) l / 100) + 200;
}
}
public class Status
{
public double Altitude { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
当我的代码被执行时,它抛出一个异常说
无法访问已处置的对象
我怀疑我在这里做错了什么。
那么,及时向所有客户端发送消息的正确方法是什么?
好吧,这次的答案不是来自 Stack Overflow,而是来自另一个来源。
这可以在 ASP.NET Core + SignalR Core 中使用此代码完成。
你需要2个部分。
非常感谢大卫福勒的答复!
| 归档时间: |
|
| 查看次数: |
2403 次 |
| 最近记录: |