Class CallInvoker (2.66.0)

public abstract class CallInvoker

Abstraction of client-side RPC invocation.

Inheritance

object > CallInvoker

Namespace

Grpc.Core

Assembly

Grpc.Core.Api.dll

Methods

AsyncClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, string?, CallOptions)

public abstract AsyncClientStreamingCall<TRequest, TResponse> AsyncClientStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string? host, CallOptions options) where TRequest : class where TResponse : class

Invokes a client streaming call asynchronously. In client streaming scenario, client sends a stream of requests and server responds with a single response.

Parameters
Name Description
method Method
host string
options CallOptions
Returns
Type Description
AsyncClientStreamingCall
Type Parameters
Name Description
TRequest
TResponse

AsyncDuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, string?, CallOptions)

public abstract AsyncDuplexStreamingCall<TRequest, TResponse> AsyncDuplexStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string? host, CallOptions options) where TRequest : class where TResponse : class

Invokes a duplex streaming call asynchronously. In duplex streaming scenario, client sends a stream of requests and server responds with a stream of responses. The response stream is completely independent and both side can be sending messages at the same time.

Parameters
Name Description
method Method
host string
options CallOptions
Returns
Type Description
AsyncDuplexStreamingCall
Type Parameters
Name Description
TRequest
TResponse

AsyncServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse>, string?, CallOptions, TRequest)

public abstract AsyncServerStreamingCall<TResponse> AsyncServerStreamingCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string? host, CallOptions options, TRequest request) where TRequest : class where TResponse : class

Invokes a server streaming call asynchronously. In server streaming scenario, client sends on request and server responds with a stream of responses.

Parameters
Name Description
method Method
host string
options CallOptions
request TRequest
Returns
Type Description
AsyncServerStreamingCall
Type Parameters
Name Description
TRequest
TResponse

AsyncUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse>, string?, CallOptions, TRequest)

public abstract AsyncUnaryCall<TResponse> AsyncUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string? host, CallOptions options, TRequest request) where TRequest : class where TResponse : class

Invokes a simple remote call asynchronously.

Parameters
Name Description
method Method
host string
options CallOptions
request TRequest
Returns
Type Description
AsyncUnaryCall
Type Parameters
Name Description
TRequest
TResponse

BlockingUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse>, string?, CallOptions, TRequest)

public abstract TResponse BlockingUnaryCall<TRequest, TResponse>(Method<TRequest, TResponse> method, string? host, CallOptions options, TRequest request) where TRequest : class where TResponse : class

Invokes a simple remote call in a blocking fashion.

Parameters
Name Description
method Method
host string
options CallOptions
request TRequest
Returns
Type Description
TResponse
Type Parameters
Name Description
TRequest
TResponse

Extension Methods