public async Task <IActionResult> SingleAsync( IFormFile file, string FileTitle) { try { if (HttpContext.Request.Form.Files.Any()) { // Only accept .zip files if (file.ContentType == "application/x-zip-compressed") { string path = Path.Combine( environment.WebRootPath, "files", file.FileName); // Create directory if not exists string directoryName = Path.GetDirectoryName(path); if (!Directory.Exists(directoryName)) { Directory.CreateDirectory(directoryName); } using (var stream = new FileStream(path, FileMode.Create)) { await file.CopyToAsync(stream); } // Save to database if (FileTitle == "") { FileTitle = "[Unknown]"; } FilesDTO objFilesDTO = new FilesDTO(); objFilesDTO.FileName = FileTitle; objFilesDTO.FilePath = file.FileName; BlogsService objBlogsService = new BlogsService(blogsContext, environment); await objBlogsService.CreateFilesAsync(objFilesDTO); } } return(StatusCode(200)); } catch (Exception ex) { return(StatusCode(500, ex.Message)); } }