Ejemplo n.º 1
0
        /// <inheritdoc/>
        public override async Task <TResponse> InvokeBindingAsync <TRequest, TResponse>(
            string bindingName,
            string operation,
            TRequest data,
            IReadOnlyDictionary <string, string> metadata = default,
            CancellationToken cancellationToken           = default)
        {
            ArgumentVerifier.ThrowIfNullOrEmpty(bindingName, nameof(bindingName));
            ArgumentVerifier.ThrowIfNullOrEmpty(operation, nameof(operation));

            Autogenerated.InvokeBindingResponse response = await MakeInvokeBindingRequestAsync(bindingName, operation, data, metadata, cancellationToken);

            return(ConvertFromInvokeBindingResponse <TResponse>(response, this.jsonSerializerOptions));
        }
Ejemplo n.º 2
0
        private static T ConvertFromInvokeBindingResponse <T>(Autogenerated.InvokeBindingResponse response, JsonSerializerOptions options = null)
        {
            var responseData = response.Data.ToStringUtf8();

            return(JsonSerializer.Deserialize <T>(responseData, options));
        }