public async Task <IActionResult> PutCrawlSource([FromForm] int id, [FromForm] CrawlSource crawlSource) { if (id != crawlSource.Id) { return(BadRequest()); } var files = HttpContext.Request.Form.Files; await SaveFiles(files, _env.WebRootPath + "\\images\\sources\\", crawlSource); _context.Entry(crawlSource).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!CrawlSourceExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <CrawlSource> > PostCrawlSource([FromForm] CrawlSource crawlSource) { var files = HttpContext.Request.Form.Files; await SaveFiles(files, _env.WebRootPath + "\\images\\sources\\", crawlSource); _context.CrawlSources.Add(crawlSource); await _context.SaveChangesAsync(); return(CreatedAtAction("GetCrawlSource", new { id = crawlSource.Id }, crawlSource)); }
public async Task SaveFiles(IFormFileCollection files, string path, CrawlSource crawlSource) { foreach (var file in files) { string name = crawlSource.Name.Replace(' ', '_'); string fileName = path + name + Path.GetExtension(GetValidFName(file.FileName)); await SaveFileToDisk(file, fileName); crawlSource.Logo = "/" + path.TrimStart(_env.WebRootPath.ToCharArray()).Replace('\\', '/') + name + Path.GetExtension(GetValidFName(file.FileName)); } }