'IObservable <syncprogress>'不包含'CombineLatest'的定义

时间:2017-09-09 08:50:46

标签: xamarin.ios synchronization realm realm-mobile-platform

我刚刚从领域中获取了符合我要求的代码片段。

        var session = realm.GetSession();
        var uploadProgress =  session.GetProgressObservable(ProgressDirection.Upload, ProgressMode.ReportIndefinitely);
        var downloadProgress = session.GetProgressObservable(ProgressDirection.Download, ProgressMode.ReportIndefinitely);

        var token = uploadProgress.CombineLatest(downloadProgress, (upload, download) =>
                                  {
                                      return new
                                      {
                                          TotalTransferred = upload.TransferredBytes + download.TransferredBytes,
                                          TotalTransferable = upload.TransferableBytes + download.TransferableBytes
                                      };
                                  })
                                  .Throttle(TimeSpan.FromSeconds(0.1))
                                  .ObserveOn(SynchronizationContext.Current)
                                  .Subscribe(progress =>
                                  {
                                      if (progress.TotalTransferred < progress.TotalTransferable)
                                      {
                              // Show spinner
                          }
                                      else
                                      {
                              // Hide spinner
                          }
                                  });

但是Xamarin提供的.Net子集中的IObservable接口内没有CombineLatest方法。

但鉴于我直接从真实的网站上获取它,它应该可以工作。

0 个答案:

没有答案