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

PublishToGalleryAsync() public method

Share an Album or Image to the Gallery. 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 PublishToGalleryAsync ( string galleryItemId, string title, string topicId = null, bool bypassTerms = null, bool mature = null ) : Task
galleryItemId string The gallery item id.
title string The title of the image. This is required.
topicId string The topic id - not the topic name.
bypassTerms bool /// If the user has not accepted the terms yet, this endpoint will return an error. To by-pass /// the terms in general simply set this value to true. ///
mature bool If the post is mature, set this value to true.
return Task
        public async Task<bool> PublishToGalleryAsync(string galleryItemId, string title, string topicId = null,
            bool? bypassTerms = null,
            bool? mature = null)
        {
            if (string.IsNullOrWhiteSpace(galleryItemId))
                throw new ArgumentNullException(nameof(galleryItemId));

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

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

            var url = $"gallery/{galleryItemId}";

            using (var request = RequestBuilder.PublishToGalleryRequest(url, title, topicId, bypassTerms, mature))
            {
                var published = await SendRequestAsync<bool>(request).ConfigureAwait(false);
                return published;
            }
        }

Usage Example

コード例 #1
0
        public async Task PublishToGalleryAsync_True()
        {
            var mockUrl = "https://api.imgur.com/3/gallery/xyZ";
            var mockResponse = new HttpResponseMessage(HttpStatusCode.OK)
            {
                Content = new StringContent(MockGalleryEndpointResponses.PublishToGallery)
            };

            var client = new ImgurClient("123", "1234", MockOAuth2Token);
            var endpoint = new GalleryEndpoint(client,
                new HttpClient(new MockHttpMessageHandler(mockUrl, mockResponse)));
            var published = await endpoint.PublishToGalleryAsync("xyZ", "Test Title").ConfigureAwait(false);

            Assert.True(published);
        }
All Usage Examples Of Imgur.API.Endpoints.Impl.GalleryEndpoint::PublishToGalleryAsync