public object Patch([FromBody] dynamic model, string id) { FileId fileId = FileId.FromUuid(id); IFileInfo info = _helper.GetExistingFileInfo(fileId.PhysicalPath); if (info == null) { return(NotFound()); } dynamic result = null; switch (info.Type) { case FileType.File: result = _helper.ToJsonModel(_helper.UpdateFile(model, info)); break; case FileType.Directory: result = _helper.ToJsonModel(_helper.UpdateDirectory(model, info)); break; default: return(new StatusCodeResult((int)HttpStatusCode.MethodNotAllowed)); } if (result.id != id) { return(LocationChanged(FilesHelper.GetLocation(result.id), result)); } return(result); }
private object PatchDirectory(dynamic model, FileId fileId) { var physicalPath = _helper.UpdateDirectory(model, fileId.PhysicalPath); return(_helper.ToJsonModel(_provider.GetDirectory(physicalPath))); }