私はちょうど学び始めてObservable
おり、そのすべてのバリエーションといくつかの奇妙な問題に遭遇します。ここにあります:
WCFサービス宣言があります(「サービス参照の追加」プロセスの後):
public IAsyncResult ReceiveAllUsersAsync(AsyncCallback Callback, object State)
{
// Do some work
}
そしてここで最後のもの:
public IObservable<User> EndReceiveAllUsers(IAsyncResult AsyncResultHandler)
{
// Do some work (actuall y it's a: return AsyncResultHandler.EndInvoke();
// return IObservable<User>
}
のEndReceiveAllUsers
リターンコレクションを見ることができるようにUser
次に、次のようにRXを実行します。
// This will not owrk
Func<IObservable<User>> callWcfService = Observable.FromAsyncPattern<IObservable<User>>(BeginReceiveAll, EndReceiveAll);
// Actuall Func<> signature is:
Func<IObservable< IObservable<User> >> callWcfService = Observable.FromAsyncPattern<IObservable<User>>(BeginReceiveAll, EndReceiveAll);
しかし、問題は、から返されるものがすべてであるということObservable.FromAsyncPattern
です。実際に戻ります。結果のコレクションではなく、結果を1つだけ返す方法IObservable<>
IObservable<User>
IObservable< IObservable<User> >
IObservable<User>