Imgur.API.Endpoints.Impl.TopicEndpoint.GetGalleryTopicItemAsync C# (CSharp) Method

GetGalleryTopicItemAsync() public method

View a single item in a gallery topic.
/// Thrown when a null reference is passed to a method that does not accept it as a /// valid argument. /// Thrown when an error is found in a response from an Imgur endpoint. Thrown when an error is found in a response from a Mashape endpoint.
public GetGalleryTopicItemAsync ( string galleryItemId, string topicId ) : Task
galleryItemId string The gallery item id.
topicId string /// The ID or URL-formatted name of the topic. If using a topic's name, replace its spaces with /// underscores (Mother's_Day). ///
return Task
        public async Task<IGalleryItem> GetGalleryTopicItemAsync(string galleryItemId, string topicId)
        {
            if (string.IsNullOrWhiteSpace(galleryItemId))
                throw new ArgumentNullException(nameof(galleryItemId));

            if (string.IsNullOrWhiteSpace(topicId))
                throw new ArgumentNullException(nameof(topicId));

            var url = $"topics/{topicId.Replace(" ", "_")}/{galleryItemId}";

            using (var request = RequestBuilder.CreateRequest(HttpMethod.Get, url))
            {
                var items = await SendRequestAsync<GalleryItem>(request).ConfigureAwait(false);
                return items;
            }
        }

Usage Example

        public async Task GetGalleryTopicItemAsync_WithTopicIdNull_ThrowsNewArgumentNullException()
        {
            var client = new ImgurClient("123", "1234");
            var endpoint = new TopicEndpoint(client);

            var exception =
                await
                    Record.ExceptionAsync(
                        async () => await endpoint.GetGalleryTopicItemAsync("XyZ", null).ConfigureAwait(false))
                        .ConfigureAwait(false);
            Assert.NotNull(exception);
            Assert.IsType<ArgumentNullException>(exception);
        }
All Usage Examples Of Imgur.API.Endpoints.Impl.TopicEndpoint::GetGalleryTopicItemAsync