如何进行多个隐式流订阅?

问题描述

我尝试通过多个流命名空间使用 ImplicitStreamSubscription 但得到异常:

未能将消息传递给消费者 d03d6cb5-a003-aea5-0b51-84aa320b7d9f 用于流 test-0bc2df02-4205-4fbf-ae69-a565c26ab413-test_stream_provider,可能 重试。 Orleans.Runtime.OrleansException:流类型不匹配。一种 流只能支持单一类型的数据。的泛型类型 请求的流(System.String)与之前的不匹配 请求的类型(Exchange.Model)。

我的谷物由两个 ImplicitStreamSubscription 属性注释。

[ImplicitStreamSubscription(MessagebrokerConstants.Model)]
[ImplicitStreamSubscription(MessagebrokerConstants.TestMessage)]

OnSubscribed 实现:

public async Task OnSubscribed(IStreamSubscriptionHandleFactory handleFactory)
{
    var handle = handleFactory.Create<Model>();
    await handle.ResumeAsync((data,token) =>
    {
        Console.WriteLine(data);
        return Task.CompletedTask;
    });

    var handle2 = handleFactory.Create<string>();
    await handle2.ResumeAsync((data,token) =>
    {
        Console.WriteLine(data);
        return Task.CompletedTask;
    });
}

发生这种情况的原因是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...