Imgur.API.Endpoints.Impl.GalleryEndpoint.VoteGalleryItemAsync C# (CSharp) Method

VoteGalleryItemAsync() public method

Vote for an item. Send the same value again to undo a vote. OAuth authentication required.
/// 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 VoteGalleryItemAsync ( string galleryItemId, VoteOption vote ) : Task
galleryItemId string The gallery item id.
vote VoteOption The vote.
return Task
        public async Task<bool> VoteGalleryItemAsync(string galleryItemId, VoteOption vote)
        {
            if (string.IsNullOrWhiteSpace(galleryItemId))
                throw new ArgumentNullException(nameof(galleryItemId));

            if (ApiClient.OAuth2Token == null)
                throw new ArgumentNullException(nameof(ApiClient.OAuth2Token), OAuth2RequiredExceptionMessage);

            var voteValue = $"{vote}".ToLower();
            var url = $"gallery/{galleryItemId}/vote/{voteValue}";

            using (var request = RequestBuilder.CreateRequest(HttpMethod.Post, url))
            {
                var voted = await SendRequestAsync<bool>(request).ConfigureAwait(false);
                return voted;
            }
        }
    }

Usage Example

コード例 #1
0
        public async Task VoteGalleryItemAsync_WithGalleryItemIdNull_ThrowsArgumentNullException()
        {
            var client = new ImgurClient("123", "1234", MockOAuth2Token);
            var endpoint = new GalleryEndpoint(client);

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