目前我正在使用Observable.Create()內的await。 ExecuteRequestAsync是一個包裝類叫HttpClient.GetAsync Method (String)如何使用RxNET製作異步HTTP請求?
public IObservable<IList<ExampleResponseModel>> ListExamplesRx()
{
return Observable.Create<IList<ExampleResponseModel>>(
o =>
{
try
{
var url = string.Format(Routes.Examples.List);
IList<ExampleResponseModel> exampleResponse = await ExecuteRequestAsync<IList<ExampleResponseModel>>(url, HttpMethod.Get);
o.OnNext(exampleResponse);
o.OnCompleted();
}
catch (Exception e)
{
o.OnError(e);
}
return Disposable.Empty;
}
);
}
這是最好的做法呢?有沒有更合適的rx解決方案?
作爲一般規則,只要你有'返回Disposable.Empty;'的'.Create'那麼你正在做的事情是錯誤的。 – Enigmativity
將刪除'Disposable.Empty'糾正這個問題?在上述情況下應該返回什麼:'Observable.Create'? –