public IAsyncOperation<int> DownloadRangeToByteArrayAsync([WriteOnlyArray] byte[] target, int index, long? fileOffset, long? length, AccessCondition accessCondition, FileRequestOptions options, OperationContext operationContext) { return AsyncInfo.Run(async (token) => { using (SyncMemoryStream stream = new SyncMemoryStream(target, index)) { await this.DownloadRangeToStreamAsync(stream.AsOutputStream(), fileOffset, length, accessCondition, options, operationContext).AsTask(token); return (int)stream.Position; } }); }
public IAsyncOperation<string> DownloadTextAsync(AccessCondition accessCondition, FileRequestOptions options, OperationContext operationContext) { return AsyncInfo.Run(async (token) => { using (SyncMemoryStream stream = new SyncMemoryStream()) { await this.DownloadToStreamAsync(stream.AsOutputStream(), accessCondition, options, operationContext).AsTask(token); byte[] streamAsBytes = stream.ToArray(); return Encoding.UTF8.GetString(streamAsBytes, 0, streamAsBytes.Length); } }); }