Exemple #1
0
        public IAsyncOperation<Blob> UploadBlob(BlobInfo blobInfo, IInputStream source)
        {
            if (source == null)
            {
                throw new ArgumentNullException("source");
            }
            blobInfo.ValidateRequired("blobInfo");

            return AsyncInfo.Run(
                async cancelToken =>
                      {
                          Stream stream = source.AsStreamForRead();
                          Uri blobUri =
                              await
                                  Client.RecordMethods.UploadBlobStreamAsync(
                                      m_recordRef, stream, blobInfo.ContentType, cancelToken);

                          return new Blob(blobInfo, (int) stream.Length, blobUri.AbsoluteUri);
                      }
                );
        }