RXを使用してWCFからデータをダウンロードしようとしています。ただしObservable.FromAsyncPattern()
、組み合わせて使用しても応答は返されませんSelecMany
以下のスニペットでこの問題を強調しようとしました。
var timer = Observable.Timer(TimeSpan.FromSeconds(1));
var obs = Observable.FromAsyncPattern<PictureFile>(ServiceClient.BeginDownloadFilePreview, ServiceClient.EndDownloadFilePreview);
obs().Subscribe(x => Debug.WriteLine("I am here"));
var result = from _ in timer
from data in obs()
select data;
result.Subscribe(x => Debug.WriteLine("Can't get here :( "));
したがって、RXをSelecMany
正しく理解していれば、上記のコードは次のように出力されます。
"私はここにいます"
「ここに行けない:(」
ただし、最初の行のみが印刷され、2番目の行は印刷されません。
編集:このコードはデバッガーが接続されていなくても正常に実行されますが、デバッガーなしで実行すると失敗することを忘れました