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


JsonRpc Класс

Определение

Управляет подключением JSON-RPC к другой сущности через Stream.

public class JsonRpc : IDisposable, Microsoft.IDisposableObservable
public class JsonRpc : IDisposable, Microsoft.IDisposableObservable, StreamJsonRpc.Reflection.IJsonRpcFormatterCallbacks, StreamJsonRpc.Reflection.IJsonRpcTracingCallbacks
type JsonRpc = class
    interface IDisposableObservable
    interface IDisposable
type JsonRpc = class
    interface IDisposableObservable
    interface IDisposable
    interface IJsonRpcFormatterCallbacks
    interface IJsonRpcTracingCallbacks
Public Class JsonRpc
Implements IDisposable, IDisposableObservable
Public Class JsonRpc
Implements IDisposable, IDisposableObservable, IJsonRpcFormatterCallbacks, IJsonRpcTracingCallbacks
Наследование
JsonRpc
Реализации

Конструкторы

JsonRpc(DelimitedMessageHandler, Object)

Инициализирует новый экземпляр класса JsonRpc.

JsonRpc(IJsonRpcMessageHandler)

Инициализирует новый экземпляр класса JsonRpc.

JsonRpc(IJsonRpcMessageHandler, Object)

Инициализирует новый экземпляр класса JsonRpc.

JsonRpc(Stream)

Инициализирует новый экземпляр класса , JsonRpc который использует HeaderDelimitedMessageHandler вокруг сообщений, сериализованных с помощью JsonMessageFormatter.

JsonRpc(Stream, Stream, Object)

Инициализирует новый экземпляр класса , JsonRpc который использует HeaderDelimitedMessageHandler вокруг сообщений, сериализованных с помощью JsonMessageFormatter.

Свойства

ActivityTracingStrategy

Возвращает или задает стратегию распространения идентификаторов действий по RPC.

AllowModificationWhileListening

Возвращает или задает значение, указывающее, можно ли изменить конфигурацию этого экземпляра после StartListening() вызова или Attach(Stream, Object) .

CancellationStrategy

Возвращает или задает используемую стратегию отмены.

CancelLocallyInvokedMethodsWhenConnectionIsClosed

Возвращает или задает значение, указывающее, следует ли отменить все методы, отправляемые локально, которые принимают CancellationToken при закрытии соединения с удаленной стороной.

Completion

Возвращает объект , Task который завершается при удалении этого экземпляра или при остановке прослушивания по ошибке, удалению или закрытию потока.

DispatchCompletion

Возвращает объект , Task который завершается, если из вызова RPC не выполняются локальные целевые методы.

Encoding

Возвращает или задает кодировку, используемую для передаваемых сообщений JSON.

ExceptionStrategy

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

IsDisposed

Управляет подключением JSON-RPC к другой сущности через Stream.

JsonSerializer

Возвращает объект , используемый JsonSerializer при сериализации и десериализации аргументов и возвращаемых значений метода.

JsonSerializerFormatting

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

MessageHandler

Возвращает обработчик сообщений, используемый для отправки и получения сообщений.

SynchronizationContext

Возвращает или задает объект , используемый SynchronizationContext при вызове методов, запрошенных удаленной стороной.

TraceSource

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

Методы

AddLocalRpcMethod(MethodInfo, Object, JsonRpcMethodAttribute)

Добавляет обработчик для метода RPC с заданным именем.

AddLocalRpcMethod(String, Delegate)

Добавляет обработчик для метода RPC с заданным именем.

AddLocalRpcMethod(String, MethodInfo, Object)

Добавляет обработчик для метода RPC с заданным именем.

AddLocalRpcTarget(Object)

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

AddLocalRpcTarget(Object, JsonRpcTargetOptions)

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

AddLocalRpcTarget(Type, Object, JsonRpcTargetOptions)

Управляет подключением JSON-RPC к другой сущности через Stream.

AddLocalRpcTarget<T>(T, JsonRpcTargetOptions)

Управляет подключением JSON-RPC к другой сущности через Stream.

AddRemoteRpcTarget(JsonRpc)

Добавляет удаленное RPC-подключение, чтобы вызовы можно было перенаправить на удаленный целевой объект, если локальные целевые объекты не обрабатывают его.

Attach(Stream, Object)

Инициализирует новый экземпляр JsonRpc класса , который использует HeaderDelimitedMessageHandler сообщения, сериализованные с помощью JsonMessageFormatter, и немедленно начинает прослушивание.

Attach(Stream, Stream, Object)

Инициализирует новый экземпляр JsonRpc класса , который использует HeaderDelimitedMessageHandler сообщения, сериализованные с помощью JsonMessageFormatter, и немедленно начинает прослушивание.

Attach(Type)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach(Type, JsonRpcProxyOptions)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach<T>()

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach<T>(IJsonRpcMessageHandler)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach<T>(IJsonRpcMessageHandler, JsonRpcProxyOptions)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach<T>(JsonRpcProxyOptions)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach<T>(Stream)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

Attach<T>(Stream, Stream)

Создает прокси-сервер клиента JSON-RPC, соответствующий указанному интерфейсу сервера.

CreateErrorDetails(JsonRpcRequest, Exception)

Создает объект , используемый JsonRpcError.ErrorDetail в качестве значения для свойства error, которое будет отправлено клиенту в ответ на исключение, вызванное методом RPC, вызываемого локально.

CreateExceptionFromRpcError(JsonRpcRequest, JsonRpcError)

Создает (или производный RemoteRpcException тип), представляющий данные, найденные в ответе на ошибку JSON-RPC. Этот метод вызывается на стороне клиента для создания исключения, которое будет возвращено клиенту RPC.

CreateNewRequestId()

Создает уникальный RequestId для исходящего запроса.

DispatchRequestAsync(JsonRpcRequest, TargetMethod, CancellationToken)

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

Dispose()

Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов.

Dispose(Boolean)

Удаляет управляемые и собственные ресурсы, хранящиеся в этом экземпляре.

GetErrorDetailsDataType(JsonRpcError)

Определяет тип, в который объект должен быть десериализован Data для входящего JsonRpcError сообщения.

GetJsonRpcMethodAttribute(String, ReadOnlySpan<ParameterInfo>)

JsonRpcMethodAttribute Возвращает для ранее обнаруженного метода RPC, если он имеется.

InvokeAsync(String, Object)

Вызывает заданный метод на сервере JSON-RPC.

InvokeAsync(String, Object[])

Вызывает заданный метод на сервере JSON-RPC.

InvokeAsync<TResult>(String, Object)

Вызывает заданный метод на сервере JSON-RPC.

InvokeAsync<TResult>(String, Object[])

Вызывает заданный метод на сервере JSON-RPC.

InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken)

Вызывает указанный метод RPC.

InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken, Boolean)

Вызывает указанный метод RPC.

InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken)
Устаревшие..

Вызывает указанный метод RPC.

InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken, Boolean)
Устаревшие..

Вызывает заданный метод на сервере JSON-RPC.

InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken)

Вызывает указанный метод RPC.

InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken, Boolean)

Вызывает указанный метод RPC.

InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, IReadOnlyList<Type>, IReadOnlyDictionary<String,Type>, CancellationToken, Boolean)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithCancellationAsync(String, IReadOnlyList<Object>, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithCancellationAsync(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithParameterObjectAsync(String, Object, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithParameterObjectAsync<TResult>(String, Object, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

InvokeWithParameterObjectAsync<TResult>(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken)

Вызывает заданный метод на сервере JSON-RPC.

IsFatalException(Exception)

Указывает, следует ли закрыть подключение, когда сервер создает исключение.

LoadType(String, String)

Пытается загрузить тип на основе его полного имени и, возможно, имени сборки.

NotifyAsync(String, Object)

Вызывает заданный метод на сервере JSON-RPC, не дожидаясь ответа.

NotifyAsync(String, Object[])

Вызовите метод на сервере и не дожидайтесь его завершения, срабай и забуди стиль.

NotifyAsync(String, Object[], IReadOnlyList<Type>)

Вызывает заданный метод на сервере JSON-RPC, не дожидаясь ответа.

NotifyWithParameterObjectAsync(String, Object)

Вызовите метод на сервере и не дожидайтесь его завершения, срабай и забуди стиль. Параметр передается как объект .

NotifyWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>)

Вызывает заданный метод на сервере JSON-RPC, не дожидаясь ответа.

OnRequestTransmissionAborted(JsonRpcRequest)

Вызывает событие RequestTransmissionAborted.

OnResponseReceived(JsonRpcMessage)

Вызывает событие ResponseReceived.

OnResponseSent(JsonRpcMessage)

Вызывает событие ResponseSent.

StartListening()

Начинает прослушивать входящие сообщения.

События

Disconnected

Возникает при отключении базового потока.

Явные реализации интерфейса

IDisposableObservable.IsDisposed

Управляет подключением JSON-RPC к другой сущности через Stream.

IJsonRpcFormatterCallbacks.RequestTransmissionAborted

Управляет подключением JSON-RPC к другой сущности через Stream.

IJsonRpcFormatterCallbacks.ResponseReceived

Управляет подключением JSON-RPC к другой сущности через Stream.

IJsonRpcFormatterCallbacks.ResponseSent

Управляет подключением JSON-RPC к другой сущности через Stream.

IJsonRpcTracingCallbacks.OnMessageDeserialized(JsonRpcMessage, Object)

Управляет подключением JSON-RPC к другой сущности через Stream.

IJsonRpcTracingCallbacks.OnMessageSerialized(JsonRpcMessage, Object)

Управляет подключением JSON-RPC к другой сущности через Stream.

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