[英]Orleans Extension not installed
我開始深入研究 Orleans Streams,但在使用 ImplicitStreamSubscription 時遇到了問題。 我正在通過添加一個實現接口和谷物的新項目來構建QuickStart示例。 這是到目前為止我在我的谷物中的所有代碼。
[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);
一切似乎都執行得很好,實例化了一個新的 Grain 並調用了 OnActivateAsync 將消息寫入控制台,但是我收到了這個錯誤。
VSM Started206d105b-d21b-496c-997a-9dac3cf370b3 擴展未安裝在谷物上 Draco.VSMConnection.VSMDiscovery 試圖從可調用的 Orleans.Streams.OrleansCodeGenStreamConsumerExtensionMethodInvoker 調用類型 Orleans.Streams.OrleansCodeGenStreamConsumerExtensionMethodInvoker onvokableInstallActivrains.DataRuntime. .VSMConnection.VSMDiscovery 試圖從可調用的 Orleans.Runtime.ActivationData 調用類型 Orleans.Streams.OrleansCodeGenStreamConsumerExtensionMethodInvoker
[2016-03-09 05:53:41.007 GMT 14 WARNING 103405 InsideRuntimeClient 127.0.0.1:11111] 擴展未安裝在 Grain 上 Draco.VSMConnection.VSMDiscovery 試圖調用類型 Orleans.Streams.OrleansMethodInStreamvokOrleansMethodInStreamvok NewPlacement 請求 S127.0.0.1:11111:195198808*cli/5853f180@9c59fabf->S127.0.0.1:11111:195198808*grn/EB2C0203/ac9d7a35808*cli/5853f180@9c59fabf->S127.0.0.1:11111:195198808*grn/EB2C0203/ac9d7a35803/ac9d7a35803/ac9d7a35Streamer. )
正如我所提到的,一切似乎都運行正常,但出現此錯誤非常令人擔憂。 任何幫助將不勝感激。
您需要確保在配置文件中為客戶端和筒倉正確指定了“SMSProvider”流提供程序,如下所示: https : //github.com/dotnet/orleans/blob/master/test/Tester/OrleansConfigurationForStreamingUnitTests .xml#L9
對我來說,這是由具有隱式訂閱屬性的谷物引起的,但是忘記訂閱 OnActiveAsync 方法中的流(這是必需的,並且在上面提到的快速入門中進行了概述)......不清楚錯誤信息。 希望這可以為其他人節省一些痛苦。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.