public async Task Load(string currentPath, IFormFileCollection files) { foreach (var file in files) { var filename = ContentDispositionHeaderValue .Parse(file.ContentDisposition) .FileName .Trim('"'); var physicalPath = PhysicalBasePath + currentPath + filename; await FilesRepository.AddFile(new UserFile { DateCreated = DateTime.Now, Length = file.Length, Name = filename, Path = currentPath + filename, PhysicalPath = physicalPath, Href = physicalPath, Type = UserFileType.File }); using (var fileStream = new FileStream(physicalPath, FileMode.OpenOrCreate)) { using (var fileReading = file.OpenReadStream()) { var bytes = new byte[fileReading.Length]; await fileReading.ReadAsync(bytes, 0, bytes.Length); await fileStream.WriteAsync(bytes, 0, bytes.Length); } } } }
public void AddFile(FileViewModel model) { var file = _autoMapper.Map <Files>(model); file.TaskId = file.task.id; file.task = null; _filesRepo.AddFile(file); }
async public Task SaveCover(int bookId, Stream stream) { var book = _booksRepository.GetBook(bookId); if (book == null) { throw new ArgumentException($"Book with id {bookId} not found!"); } var file = new BookEditorDemo.Models.File(); await _filesRepository.AddFile(file, stream); book.Cover = file; _booksRepository.UpdateBook(book); }
public async Task <IActionResult> Post() { var listurls = new List <dynamic>(); try { var files = HttpContext.Request.Form.Files; foreach (var file in files) { if (file.Length > 0) { var userId = HttpContext.Request.Headers["UserId"]; var fileid = _filesRepository.AddFile(file.OpenReadStream(), file.FileName, file.ContentType, userId); var item = new { url = _configurationRoot["UrlBase"] + "/" + userId + "/" + fileid + "/" + file.FileName, contentType = file.ContentType }; listurls.Add(item); } } } catch (Exception e) { _logger.LogError("Ocorreu um erro ao carregar o arquivo." + e.Message); return(BadRequest()); } var response = new { status = "success", files = listurls }; return(Ok(response)); }