private static async Task <Guid> UploadFilesAsync(IOcrClient ocrClient) { ImageSubmittingParams submitParams; var firstFilePath = "New Image.jpg"; var secondFilePath = "Picture_003.jpg"; // First file using (var fileStream = new FileStream(firstFilePath, FileMode.Open)) { var submitImageResult = await ocrClient.SubmitImageAsync( null, fileStream, Path.GetFileName(firstFilePath)); // Save TaskId for next files and ProcessDocument method submitParams = new ImageSubmittingParams { TaskId = submitImageResult.TaskId }; } // Second file using (var fileStream = new FileStream(secondFilePath, FileMode.Open)) { await ocrClient.SubmitImageAsync( submitParams, fileStream, Path.GetFileName(secondFilePath)); } return(submitParams.TaskId.Value); }
protected Task <TaskInfo> SubmitImageAsync( string fileName, Stream fileStream, Guid?taskId = null) { var parameters = taskId.HasValue ? new ImageSubmittingParams { TaskId = taskId.Value } : null; return(ApiClient.SubmitImageAsync(parameters, fileStream, fileName)); }
private async Task <TaskInfo> SubmitImagesAsync(IReadOnlyList <string> files, object state) { var task = default(TaskInfo); for (var i = 0; i < files.Count; i++) { using (_scope.Start($"Uploading {i + 1}/{files.Count} file: {files[i]}")) using (var fileStream = File.OpenRead(files[i])) { task = await _ocrClient.SubmitImageAsync( new ImageSubmittingParams { TaskId = task?.TaskId }, fileStream, Path.GetFileNameWithoutExtension(files[i])) .ConfigureAwait(false); } } UploadFileCompleted?.Invoke(this, new UploadCompletedEventArgs(task, state)); return(task); }