コード例 #1
0
        public async Task <ActionResult <SlidePartial> > GetSlidePartial(string place, string presenter, string slug, int number, CancellationToken ct)
        {
            var show = await _data.Get(place, presenter, slug, ct).ConfigureAwait(false);

            if (show == null || show.HighestSlideShown.GetValueOrDefault() < number)
            {
                return(NotFound());
            }

            var slidePartial = new SlidePartial
            {
                SlideImageUrl = $"/slides/{place}/{presenter}/{slug}/{number}"
            };

            return(slidePartial);
        }
コード例 #2
0
        public async Task <IActionResult> GetSlidePartial(string presenter, string slug, int number)
        {
            var(show, slide) =
                await MultiTask.WhenAll(_shows.Get(presenter, slug), _shows.GetSlide(presenter, slug, number));

            if (show == null || (slide == null || !slide.HasBeenShown))
            {
                return(NotFound());
            }

            var slidePartial = new SlidePartial
            {
                Layout = slide.Layout,
                Html   = ProcessSlideHtml(slide.Html),
                Title  = slide.Title
            };

            return(Ok(slidePartial));
        }