Struct RpcRequest
Represents an RPC request message. A struct so that framing a request does not heap-allocate the envelope on the client hot path; it is constructed, serialized, and read but never mutated after construction.
public struct RpcRequest
- Inherited Members
Constructors
RpcRequest()
Initializes an empty request. Required so the string field initializers run for
new RpcRequest() and during deserialization.
public RpcRequest()
Properties
InstanceId
Per-connection opaque identifier of the server-side instance this call targets.
null for ordinary singleton-service calls (the legacy code path); non-null
for nested-service calls dispatched via
IServiceDispatcher.DispatchOnInstanceAsync.
Wire-compatible with older peers because absent properties deserialize to null.
public string? InstanceId { readonly get; set; }
Property Value
MessageId
Unique identifier for this request, used for response correlation.
public int MessageId { readonly get; set; }
Property Value
MethodName
The name of the method being called.
public string MethodName { readonly get; set; }
Property Value
ServiceName
The name of the service being called.
public string ServiceName { readonly get; set; }
Property Value
Streams
Streams opened by this request body. The dispatch side registers these handles before processing later frames so streamed arguments cannot race their receivers.
public RpcStreamHandle[]? Streams { readonly get; set; }