C# 奥尔良分机未安装

C# 奥尔良分机未安装,c#,reactive-programming,orleans,C#,Reactive Programming,Orleans,我开始深入奥尔良的溪流,我遇到了一个使用隐式订阅的问题。我在这个示例的基础上添加了一个新项目,该项目同时实现了接口和粒度。这是我目前掌握的所有代码 [ImplicitStreamSubscription("RANDOMDATA")] public class VSMDiscovery : Grain, IVSMDiscovery { public override Task OnActivateAsync() { Console.WriteLine("Starte

我开始深入奥尔良的溪流,我遇到了一个使用隐式订阅的问题。我在这个示例的基础上添加了一个新项目,该项目同时实现了接口和粒度。这是我目前掌握的所有代码

[ImplicitStreamSubscription("RANDOMDATA")]
public class VSMDiscovery : Grain, IVSMDiscovery
{
    public override Task OnActivateAsync()
    {
        Console.WriteLine("Started" + this.GetPrimaryKey());

        return base.OnActivateAsync();
    }
}

public interface IVSMDiscovery : IGrainWithIntegerKey
{
}
在DevTest main中,我只是使用

 var guid = Guid.NewGuid();

 //Get one of the providers which we defined in config
 var streamProvider = Orleans.GrainClient.GetStreamProvider("SMSProvider");

 //Get the reference to a stream
 var stream = streamProvider.GetStream<int>(guid, "RANDOMDATA");

 stream.OnNextAsync(1);
var guid=guid.NewGuid();
//获取我们在配置中定义的一个提供程序
var streamProvider=Orleans.GrainClient.GetStreamProvider(“SMSProvider”);
//获取对流的引用
var stream=streamProvider.GetStream(guid,“随机数据”);
stream.OnNextAsync(1);
一切似乎都执行得很好,实例化了一个新的grain并调用了OnActivateAsync,它将消息写入控制台,但是我得到了这个错误

VSM启动206D105B-d21b-496c-997a-9dac3cf370b3 试图从可调用的Orleans.Runtime.ActivationData调用类型Orleans.Streams.OrleansCodeGenStreamConsumerExtensionMethodInvoker的grain Draco.VSMConnection.VSMDiscovery上未安装扩展 Exception=Orleans.Runtime.GrainExtensionNotInstalledException:grain Draco.VSMConnection.VSMDiscovery上未安装扩展,试图从可调用的Orleans.Runtime.ActivationData调用类型Orleans.Streams.OrleansCodeGenStreamConsumerExtensionMethodInvoker

[2016-03-09 05:53:41.007格林尼治标准时间14警告103405内部实体客户127.0.0.1:11111]grain Draco.VSMConnection.VSMDiscovery上未安装扩展,正在尝试从可调用的Orleans.Runtime.ActivationData调用类型Orleans.Streams.OrleansCodeGenStreamConsumerExtensionMethodInvoker以获取消息NewPlacement请求S127.0.0.1:11111:195198808*cli/5853f180@9c59fabf->S127.0.0.1:11111:195198808*grn/EB2C0203/ac9d7a99@0e33939b #5:global::Orleans.Streams.IStreamConsumerExtension:deliveriem()


正如我所提到的,一切看起来都正常运行,但是出现这个错误是非常令人担忧的。任何帮助都将不胜感激

您需要确保在配置文件中为客户机和思洛存储器正确指定了“SMSProvider”流提供程序,如下所示:

对于我来说,这是由于有一个具有隐式订阅属性的颗粒,但它忘了在OnActiveAsync方法中订阅流(这是必需的,并在上面提到的快速入门中进行了概述)…从错误消息中根本看不清楚。希望这能为其他人省去一些痛苦。

我也遇到过同样的问题。你能解决问题吗?发出链接断开的信号:)