public Task <Response <BlobDTO> > AddBlobAsync([Path] string containerId, [Header("Content-Disposition")] ContentDispositionHeaderValue contentDisposition, [Header("Content-Type")] MediaTypeHeaderValue contentType, [Body] Stream file) { Response <BlobDTO> response = null; if (_options.ThrowInternalServerError) { response = new Response <BlobDTO>("Very Bad Error", new HttpResponseMessage(System.Net.HttpStatusCode.InternalServerError), () => null); } else { var newId = Guid.NewGuid().ToString("D"); var newBlob = new BlobDTO() { ContainerId = containerId, Id = newId, MimeType = contentType.MediaType, OrigFileName = contentDisposition.FileName, SizeInBytes = file.Length, DownloadRelativeUrl = new Uri($"/blobs/{newId}/raw", UriKind.Relative) }; _seedData.Blobs.Add(newBlob); response = new Response <BlobDTO>("Very Bad Error", new HttpResponseMessage(HttpStatusCode.OK), () => newBlob); } return(Task.FromResult(response)); }
public async Task <BlobDTO> UploadBlobToCustomerDirectoryAsync(Stream stream, string fileName, string customerId) { var blobInfo = await _blobRepository.UploadBlobToCustomerFolderAsync(stream, fileName, customerId); var blobDTO = new BlobDTO(blobInfo.Item1, blobInfo.Item2); return(blobDTO); }