Пример #1
0
        public static Task DropAsync(this IViewManager viewManager, string designDocumentName, Action <DropViewIndexOptions> configureOptions)
        {
            var options = new DropViewIndexOptions();

            configureOptions(options);

            return(viewManager.DropAsync(designDocumentName, options));
        }
Пример #2
0
        public async Task DropAsync(string designDocName, DropViewIndexOptions options)
        {
            var uri = GetUri(designDocName, options.IsProduction);

            Logger.LogInformation($"Attempting to drop design document {_bucketName}/{designDocName} - {uri}");

            try
            {
                var result = await _client.DeleteAsync(uri, options.CancellationToken).ConfigureAwait(false);

                if (result.StatusCode == HttpStatusCode.NotFound)
                {
                    Logger.LogError($"Failed to drop design document {_bucketName}/{designDocName} because it does not exist - {uri}");
                    throw new DesignDocumentNotFound(_bucketName, designDocName);
                }

                result.EnsureSuccessStatusCode();
            }
            catch (Exception exception)
            {
                Logger.LogError(exception, $"Failed to drop design document {_bucketName}/{designDocName} - {uri}");
                throw;
            }
        }