public async Task <ActionResult> Stream(string releaseId, string fileId) { if (Guid.TryParse(releaseId, out var releaseIdAsGuid) && Guid.TryParse(fileId, out var fileIdAsGuid)) { return(await _releaseFileService .StreamFile(releaseId : releaseIdAsGuid, fileId : fileIdAsGuid) .HandleFailures()); } return(NotFound()); }
public async Task <ActionResult> Stream(string releaseId, string fileId) { if (Guid.TryParse(releaseId, out var releaseGuid) && Guid.TryParse(fileId, out var fileGuid)) { return(await _persistenceHelper.CheckEntityExists <Release>(releaseGuid) .OnSuccessDo(release => this.CacheWithLastModified(release.Published)) .OnSuccess(release => _releaseFileService.StreamFile(release.Id, fileGuid)) .OnSuccessDo(result => this.CacheWithETag(result.FileStream.ComputeMd5Hash())) .HandleFailures()); } return(NotFound()); }