public async Task <ActionResult> DetailsAsync(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var feed = await _feedSource.GetNewsAsync(id.Value).ConfigureAwait(false); var rssFeedVm = Mapper.Map <RssFeedViewModel>(feed); if (rssFeedVm == null) { return(HttpNotFound()); } return(PartialView(rssFeedVm)); }
public async Task <HttpResponseMessage> GetNewsImageAsync(int newsId) { var newsFeed = await _feedSource.GetNewsAsync(newsId).ConfigureAwait(false); if (newsFeed == null) { return(new HttpResponseMessage(HttpStatusCode.NotFound)); } var imageData = newsFeed.ImageData; var mimeType = newsFeed.ImageMimeType; HttpResponseMessage response; using (var imageStream = new MemoryStream(imageData)) { response = new HttpResponseMessage(HttpStatusCode.OK) { Content = new ByteArrayContent(imageStream.ToArray()) }; } response.Content.Headers.ContentType = new MediaTypeHeaderValue(mimeType); return(response); }