JsonRpc Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Gestisce una connessione JSON-RPC con un'altra entità su un 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
- Ereditarietà
-
JsonRpc
- Implementazioni
Costruttori
| Nome | Descrizione |
|---|---|
| JsonRpc(DelimitedMessageHandler, Object) |
Inizializza una nuova istanza della classe JsonRpc. |
| JsonRpc(IJsonRpcMessageHandler, Object) |
Inizializza una nuova istanza della classe JsonRpc. |
| JsonRpc(IJsonRpcMessageHandler) |
Inizializza una nuova istanza della classe JsonRpc. |
| JsonRpc(Stream, Stream, Object) |
Inizializza una nuova istanza della classe JsonRpc che utilizza HeaderDelimitedMessageHandler intorno ai messaggi serializzati utilizzando il JsonMessageFormatter. |
| JsonRpc(Stream) |
Inizializza una nuova istanza della classe JsonRpc che utilizza HeaderDelimitedMessageHandler intorno ai messaggi serializzati utilizzando il JsonMessageFormatter. |
Proprietà
| Nome | Descrizione |
|---|---|
| ActivityTracingStrategy |
Ottiene o imposta la strategia per la propagazione degli ID attività su RPC. |
| AllowModificationWhileListening |
Ottiene o imposta un valore che indica se la configurazione di questa istanza può essere modificata dopo la chiamata di StartListening() o Attach(Stream, Object). |
| CancellationStrategy |
Ottiene o imposta la strategia di annullamento da utilizzare. |
| CancelLocallyInvokedMethodsWhenConnectionIsClosed |
Ottiene o imposta un valore che indica se annullare tutti i metodi inviati localmente che accettano un CancellationToken quando la connessione con la parte remota viene chiusa. |
| Completion |
Ottiene un Task che viene completato quando questa istanza viene eliminata o quando l'ascolto è stato arrestato in caso di errore, eliminazione o chiusura del flusso. |
| DispatchCompletion |
Ottiene un Task che viene completato quando non vengono eseguiti metodi di destinazione locali da una chiamata RPC. |
| Encoding |
Ottiene o imposta la codifica da usare per i messaggi JSON trasmessi. |
| ExceptionOptions |
Ottiene o imposta le impostazioni da utilizzare per serializzare/deserializzare le eccezioni. |
| ExceptionStrategy |
Ottiene o imposta un valore che indica se le eccezioni generate dal server RPC devono essere serializzate completamente per il client RPC da deserializzare. |
| IsDisposed |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| JoinableTaskFactory |
Ottiene o imposta l'oggetto JoinableTaskFactory a cui partecipare per attenuare i deadlock con il thread principale. |
| JoinableTaskTracker |
Ottiene o imposta l'oggetto JsonRpc.JoinableTaskTokenTracker da utilizzare per correlare JoinableTask i token.
Questa proprietà è applicabile solo quando JoinableTaskFactory è |
| JsonSerializer |
Ottiene il JsonSerializer utilizzato durante la serializzazione e la deserializzazione degli argomenti del metodo e i valori restituiti. |
| JsonSerializerFormatting |
Ottiene o imposta la formattazione da utilizzare per la serializzazione dei messaggi JSON-RPC. |
| MessageHandler |
Ottiene il gestore di messaggi utilizzato per inviare e ricevere messaggi. |
| SynchronizationContext |
Ottiene o imposta il SynchronizationContext da utilizzare quando si richiamano i metodi richiesti dall'entità remota. |
| TraceSource |
Ottiene o imposta il TraceSource utilizzato per tracciare JSON-RPC messaggi ed eventi. |
Metodi
| Nome | Descrizione |
|---|---|
| AddLocalRpcMethod(MethodInfo, Object, JsonRpcMethodAttribute) |
Aggiunge un gestore per un metodo RPC con un nome specificato. |
| AddLocalRpcMethod(String, Delegate) |
Aggiunge un gestore per un metodo RPC con un nome specificato. |
| AddLocalRpcMethod(String, MethodInfo, Object) |
Aggiunge un gestore per un metodo RPC con un nome specificato. |
| AddLocalRpcTarget(Object, JsonRpcTargetOptions) |
Aggiunge la destinazione specificata il più possibile oggetto da richiamare quando vengono ricevuti i messaggi in arrivo. L'oggetto di destinazione non deve ereditare l'uno dall'altro e viene richiamato nell'ordine in cui vengono aggiunti. |
| AddLocalRpcTarget(Object) |
Aggiunge la destinazione specificata il più possibile oggetto da richiamare quando vengono ricevuti i messaggi in arrivo. L'oggetto di destinazione non deve ereditare l'uno dall'altro e viene richiamato nell'ordine in cui vengono aggiunti. |
| AddLocalRpcTarget(Type, Object, JsonRpcTargetOptions) |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| AddLocalRpcTarget<T>(T, JsonRpcTargetOptions) |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| AddRemoteRpcTarget(JsonRpc) |
Aggiunge una connessione RPC remota in modo che le chiamate possano essere inoltrate alla destinazione remota se le destinazioni locali non lo gestiscono. |
| Attach(ReadOnlySpan<Type>, JsonRpcProxyOptions) |
Crea un proxy client JSON-RPC conforme alle interfacce server specificate. |
| Attach(Stream, Object) |
Inizializza una nuova istanza della classe JsonRpc che usa HeaderDelimitedMessageHandler intorno ai messaggi serializzati usando il JsonMessageFormattere inizia immediatamente l'ascolto. |
| Attach(Stream, Stream, Object) |
Inizializza una nuova istanza della classe JsonRpc che usa HeaderDelimitedMessageHandler intorno ai messaggi serializzati usando il JsonMessageFormattere inizia immediatamente l'ascolto. |
| Attach(Type, JsonRpcProxyOptions) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach(Type) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach<T>() |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach<T>(IJsonRpcMessageHandler, JsonRpcProxyOptions) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach<T>(IJsonRpcMessageHandler) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach<T>(JsonRpcProxyOptions) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach<T>(Stream, Stream) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| Attach<T>(Stream) |
Crea un proxy client JSON-RPC conforme all'interfaccia server specificata. |
| CreateErrorDetails(JsonRpcRequest, Exception) |
Crea il JsonRpcError.ErrorDetail da utilizzare come valore per la proprietà error da inviare al client in risposta a un'eccezione generata da un metodo RPC richiamato localmente. |
| CreateExceptionFromRpcError(JsonRpcRequest, JsonRpcError) |
Crea un RemoteRpcException (o un tipo derivato) che rappresenta i dati trovati in una risposta di errore JSON-RPC. Questa operazione viene chiamata sul lato client per generare l'eccezione che verrà generata di nuovo al client RPC. |
| CreateNewRequestId() |
Crea un RequestId univoco per una richiesta in uscita. |
| DispatchRequestAsync(JsonRpcRequest, TargetMethod, CancellationToken) |
Richiama il metodo nell'oggetto di destinazione RPC locale e converte la risposta in un messaggio di risultato JSON-RPC. |
| Dispose() |
Esegue attività definite dall'applicazione associate alla liberazione, al rilascio o alla reimpostazione di risorse non gestite. |
| Dispose(Boolean) |
Elimina le risorse gestite e native contenute in questa istanza. |
| GetErrorDetailsDataType(JsonRpcError) |
Determina il tipo in cui deve essere deserializzato l'oggetto Data per un messaggio JsonRpcError in ingresso. |
| GetJsonRpcMethodAttribute(String, ReadOnlySpan<ParameterInfo>) |
Ottiene il JsonRpcMethodAttribute per un metodo RPC individuato in precedenza, se presente. |
| InvokeAsync(String, Object) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeAsync(String, Object[]) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeAsync<TResult>(String, Object) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeAsync<TResult>(String, Object[]) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken, Boolean) |
Richiama il metodo RPC specificato |
| InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken) |
Richiama il metodo RPC specificato |
| InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken, Boolean) |
Obsoleti.
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken) |
Obsoleti.
Richiama il metodo RPC specificato. |
| InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken, Boolean) |
Richiama il metodo RPC specificato. |
| InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken) |
Richiama il metodo RPC specificato. |
| InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, IReadOnlyList<Type>, IReadOnlyDictionary<String,Type>, CancellationToken, Boolean) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithCancellationAsync(String, IReadOnlyList<Object>, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithCancellationAsync(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithParameterObjectAsync(String, Object, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithParameterObjectAsync<TResult>(String, Object, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| InvokeWithParameterObjectAsync<TResult>(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken) |
Richiama un determinato metodo in un server JSON-RPC. |
| IsFatalException(Exception) |
Indica se la connessione deve essere chiusa quando il server genera un'eccezione. |
| LoadType(String, String) |
Tenta di caricare un tipo in base al nome completo ed eventualmente al nome dell'assembly. |
| NotifyAsync(String, Object) |
Richiama un determinato metodo in un server JSON-RPC senza attendere la risposta. |
| NotifyAsync(String, Object[], IReadOnlyList<Type>) |
Richiama un determinato metodo in un server JSON-RPC senza attendere la risposta. |
| NotifyAsync(String, Object[]) |
Richiamare un metodo nel server e non attendere il completamento, lo stile fire-and-forget. |
| NotifyWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>) |
Richiama un determinato metodo in un server JSON-RPC senza attendere la risposta. |
| NotifyWithParameterObjectAsync(String, Object) |
Richiamare un metodo nel server e non attendere il completamento, lo stile fire-and-forget. Il parametro viene passato come oggetto . |
| OnRequestTransmissionAborted(JsonRpcRequest) |
Genera l'evento RequestTransmissionAborted. |
| OnResponseReceived(JsonRpcMessage) |
Genera l'evento ResponseReceived. |
| OnResponseSent(JsonRpcMessage) |
Genera l'evento ResponseSent. |
| SendAsync(JsonRpcMessage, CancellationToken) |
Invia il messaggio di JSON-RPC all'istanza IJsonRpcMessageHandler da trasmettere. |
| StartListening() |
Avvia l'ascolto dei messaggi in arrivo. |
Eventi
| Nome | Descrizione |
|---|---|
| Disconnected |
Generato quando il flusso sottostante viene disconnesso. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IDisposableObservable.IsDisposed |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| IJsonRpcFormatterCallbacks.RequestTransmissionAborted |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| IJsonRpcFormatterCallbacks.ResponseReceived |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| IJsonRpcFormatterCallbacks.ResponseSent |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| IJsonRpcTracingCallbacks.OnMessageDeserialized(JsonRpcMessage, Object) |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |
| IJsonRpcTracingCallbacks.OnMessageSerialized(JsonRpcMessage, Object) |
Gestisce una connessione JSON-RPC con un'altra entità su un Stream. |