【问题标题】:SignalR Streaming both ways simultaneouslySignalR 同时双向流式传输
【发布时间】:2020-02-15 01:27:12
【问题描述】:

使用 SignalR,您可以分别进行服务器到客户端和客户端到服务器的流式传输。 是否可以同时进行这两种方式?

假设我们有一些来自物联网设备的传感器数据,一旦我们在服务器上收到它,我们就想将它广播到其他设备。使用 IAsyncEnumerable 怎么办?

服务器到客户端集线器:

public async  IAsyncEnumerable<string> GetTempData()
        {

            while (true)
            {
                await Task.Delay(1000);
                yield return DateTime.Now.Second.ToString();
            }

        }

客户端到服务器

public async Task SendTempData(IAsyncEnumerable<string> lines)
        {
            await foreach (var line in lines)
            {
                await Clients.Others.SendAsync("GetData", line);
            }

        }

如您所见,我目前正在使用 SendAsync 但想用流替换它。 我不知道如何在这里将数据 SendTempData 传递给 GetData

【问题讨论】:

    标签: asp.net-core stream signalr streaming signalrcore


    【解决方案1】:

    我发现 SignalR 没有双向流,为此您需要使用其他技术,例如 gRPC。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-17
      • 2017-08-01
      • 1970-01-01
      • 2013-02-04
      • 2015-05-14
      • 2021-09-06
      • 1970-01-01
      • 2010-10-28
      相关资源
      最近更新 更多