Поделиться через


JsonRpc.DispatchRequestAsync Метод

Определение

Вызывает метод в локальном целевом объекте RPC и преобразует ответ в сообщение результата JSON-RPC.

protected virtual System.Threading.Tasks.ValueTask<StreamJsonRpc.Protocol.JsonRpcMessage> DispatchRequestAsync (StreamJsonRpc.Protocol.JsonRpcRequest request, StreamJsonRpc.TargetMethod targetMethod, System.Threading.CancellationToken cancellationToken);
abstract member DispatchRequestAsync : StreamJsonRpc.Protocol.JsonRpcRequest * StreamJsonRpc.TargetMethod * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<StreamJsonRpc.Protocol.JsonRpcMessage>
override this.DispatchRequestAsync : StreamJsonRpc.Protocol.JsonRpcRequest * StreamJsonRpc.TargetMethod * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask<StreamJsonRpc.Protocol.JsonRpcMessage>
Protected Overridable Function DispatchRequestAsync (request As JsonRpcRequest, targetMethod As TargetMethod, cancellationToken As CancellationToken) As ValueTask(Of JsonRpcMessage)

Параметры

request
JsonRpcRequest

Входящий запрос JSON-RPC, который привел targetMethod к выбору для получения отправки.

targetMethod
TargetMethod

Вызываемый метод и аргументы для передачи в него.

cancellationToken
CancellationToken

Токен отмены для передачи .StreamJsonRpc.TargetMethod.InvokeAsync(System.Threading.CancellationToken)

Возвращаемое значение

Ответное сообщение JSON-RPC, которое будет отправлено клиенту. Это никогда не должно быть null. Если протокол указывает, что клиент не ожидает ответного сообщения, он будет удален, а не передан.

Комментарии

Предполагается, что переопределения этого метода будут вызывать этот базовый метод для основных функциональных возможностей. Переопределения должны вызывать базовый метод перед получением ожиданий, чтобы обеспечить согласованное упорядочение сообщений, если цель переопределения заключается в изменении порядка входящих сообщений.

Применяется к