public delegate AsyncDuplexStreamingCall<TRequest, TResponse> AsyncDuplexStreamingCallContinuation<TRequest, TResponse>(ClientInterceptorContext<TRequest, TResponse> context)
where TRequest : class where TResponse : class;
Represents a continuation for intercepting asynchronous duplex invocations.
A delegate of this type is passed to the AsyncDuplexStreamingCall method
when an outgoing invocation is being intercepted and calling the
delegate will invoke the next interceptor in the chain, or the underlying
call invoker if called from the last interceptor. The interceptor is
allowed to call it zero, one, or multiple times, passing it the appropriate
request value and context as it sees fit.
An instance of AsyncDuplexStreamingCall<TRequest, TResponse>
representing an asynchronous invocation of a duplex-streaming RPC.
The interceptor can choose to return the same object returned from
the continuation delegate or an arbitrarily constructed instance as it sees fit.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis document describes the \u003ccode\u003eAsyncDuplexStreamingCallContinuation\u003c/code\u003e delegate, which is used for intercepting asynchronous duplex invocations in gRPC.\u003c/p\u003e\n"],["\u003cp\u003eThe delegate, when called, invokes the next interceptor or the underlying call invoker, allowing for zero, one, or multiple calls with appropriate request values and contexts.\u003c/p\u003e\n"],["\u003cp\u003eIt takes a \u003ccode\u003eClientInterceptorContext<TRequest, TResponse>\u003c/code\u003e parameter, which is passed to the next step in the invocation process, and it allows for the manipulation of the request/response.\u003c/p\u003e\n"],["\u003cp\u003eIt returns an \u003ccode\u003eAsyncDuplexStreamingCall<TRequest, TResponse>\u003c/code\u003e object, which represents an asynchronous invocation of a duplex-streaming RPC, allowing the interceptor to either pass on or replace the object.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eTRequest\u003c/code\u003e and \u003ccode\u003eTResponse\u003c/code\u003e parameters are the type parameters for the request and the response.\u003c/p\u003e\n"]]],[],null,[]]