在特定时间触发SignalR核心方法

问题描述 投票:0回答:1

我正在尝试为signalR hub方法创建一个计划的操作。在ASP.NET中我做到了这一点

private async System.Threading.Tasks.Task<object> ScheduleAction(Action action, DateTime ExecutionTime)
    {
        var t = System.Threading.Tasks.Task.Run(
            async () =>
            {
                await System.Threading.Tasks.Task.Delay((int)ExecutionTime.Subtract(DateTime.Now).TotalMilliseconds);
                action();
            });
        return t;
    }
}

可能不是最好的解决方案但它有效我会将Hub方法作为动作以及DateTime传递何时触发并且它起作用。现在在ASP.NET Core中我收到错误,说我无法访问已经处理的对象,现在我遇到了问题。我需要一种在特定时间触发Hub方法的方法。

谢谢

asp.net-core-signalr
1个回答
0
投票

我在GitHub上得到了答案。在asp.net核心中不可能手动调用hub方法。更多细节在这里:Triger SignalR Core server method at specific time

© www.soinside.com 2019 - 2024. All rights reserved.