public ActionResult GetProcessing(string filename) { if (filename == null || filename.Trim() == "") { try { if (Directory.GetFiles(FileManipulate.ROOT).Length == 0 && Directory.GetDirectories(FileManipulate.ROOT).Length == 0) { return(Ok("Директория пустая")); } else { try { return(new JsonResult(FileManipulate.GetAllFiles(FileManipulate.ROOT))); } catch { return(BadRequest("Ошибка просмотра директории")); } } } catch { return(BadRequest("Ошибка просмотра директории, вероятно она удалена")); } } else { string path = FileManipulate.ROOT + "\\" + filename; if (Directory.Exists(path)) { if (Directory.GetFiles(path).Length == 0 && Directory.GetDirectories(path).Length == 0) { return(Ok("Директория пустая")); } else { try { return(new JsonResult(FileManipulate.GetAllFiles(path))); } catch { return(BadRequest("Ошибка просмотра директории")); } } } else if (System.IO.File.Exists(path)) { try { FileStream fileStream = new FileStream(path, FileMode.Open); return(File(fileStream, "application/unknown", filename)); } catch { return(BadRequest("Не удалось отправить файл")); } } else { return(NotFound("Данный файл или директория не существует")); } } }
public ActionResult PutProcessing(IFormFileCollection files, string filename) { string copyFromPath = Request.Headers.FirstOrDefault(str => str.Key == "X-Copy-From").Value; if (filename != null) { if (files.Count == 0) { if (System.IO.File.Exists(FileManipulate.ROOT + "\\" + copyFromPath)) { if (FileManipulate.CopyFile(copyFromPath, filename)) { return(Ok("Файл " + copyFromPath + " был успешно копирован как " + filename)); } else { return(BadRequest("Копирование не удалось")); } } else { return(NotFound("Файл для копирования не найден")); } } else if (files.Count == 1) { if (FileManipulate.InsertFile(filename, files[0])) { return(Ok("Файл " + files[0].FileName + " был успешно добавлен")); } else { return(BadRequest("Вставка не удалась")); } } else if (files.Count > 1) { if (Directory.Exists(FileManipulate.ROOT + "\\" + filename)) { return(Ok(FileManipulate.InsertFiles(files, filename))); } else { return(NotFound("Директория для вставки не найдена")); } } else { return(BadRequest("Ошибка в запросе")); } } else if (files.Count > 1) { if (Directory.Exists(FileManipulate.ROOT)) { return(Ok(FileManipulate.InsertFiles(files, ""))); } else { return(NotFound("Директория для вставки не найдена")); } } else { return(BadRequest("Ошибка в запросе")); } }