Ejemplo n.º 1
0
        public virtual async Task <IActionResult> DeleteFileAsync([FromRoute] string id)
        {
            try
            {
                var file = await filesRepository.GetByIdAsync(id);

                if (file == null)
                {
                    return(NotFound($"No file with id {id}"));
                }

                var blob = await blobRepository.GetByIdAsync(id);

                if (blob == null)
                {
                    return(NotFound($"No payload found for file id {id}"));
                }

                await blobRepository.DeleteAsync(blob);

                await filesRepository.DeleteAsync(file);

                return(NoContent());
            }
            catch (Exception e)
            {
                return(this.InternalServerError(e.FlattenMessages()));
            }
        }