JsonRpc Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen 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
- Vererbung
-
JsonRpc
- Implementiert
Konstruktoren
JsonRpc(DelimitedMessageHandler, Object) |
Initialisiert eine neue Instanz der JsonRpc-Klasse. |
JsonRpc(IJsonRpcMessageHandler) |
Initialisiert eine neue Instanz der JsonRpc-Klasse. |
JsonRpc(IJsonRpcMessageHandler, Object) |
Initialisiert eine neue Instanz der JsonRpc-Klasse. |
JsonRpc(Stream) |
Initialisiert eine neue instance der -Klasse, die JsonRpc um Nachrichten verwendetHeaderDelimitedMessageHandler, die mithilfe von JsonMessageFormatterserialisiert werden. |
JsonRpc(Stream, Stream, Object) |
Initialisiert eine neue instance der -Klasse, die JsonRpc um Nachrichten verwendetHeaderDelimitedMessageHandler, die mithilfe von JsonMessageFormatterserialisiert werden. |
Eigenschaften
ActivityTracingStrategy |
Ruft die Strategie für die Weitergabe von Aktivitäts-IDs über RPC ab oder legt sie fest. |
AllowModificationWhileListening |
Ruft einen Wert ab, der angibt, ob die Konfiguration dieses instance nach oder nach StartListening() dem Aufruf geändert werden kann, oder Attach(Stream, Object) legt diesen fest. |
CancellationStrategy |
Ruft die zu verwendende Abbruchstrategie ab oder legt sie fest. |
CancelLocallyInvokedMethodsWhenConnectionIsClosed |
Ruft einen Wert ab, der angibt, ob alle lokal gesendeten Methoden abgebrochen werden sollen, die eine CancellationToken akzeptieren, wenn die Verbindung mit der Remotepartei geschlossen wird, oder legt diesen fest. |
Completion |
Ruft eine Task ab, die abgeschlossen wird, wenn diese instance verworfen wird oder wenn die Überwachung beendet wurde, unabhängig davon, ob sie durch Fehler, Entsorgung oder den Abschluss des Datenstroms beendet wurde. |
DispatchCompletion |
Ruft einen Task ab, der abgeschlossen wird, wenn keine lokalen Zielmethoden von einem RPC-Aufruf ausgeführt werden. |
Encoding |
Ruft die Codierung ab, die für übertragene JSON-Nachrichten verwendet werden soll, oder legt diese fest. |
ExceptionStrategy |
Ruft einen Wert ab, der angibt, ob vom RPC-Server ausgelöste Ausnahmen vollständig serialisiert werden sollen, damit der RPC-Client dann deserialisiert werden kann, oder legt diesen fest. |
IsDisposed |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
JsonSerializer |
Ruft die ab, die JsonSerializer beim Serialisieren und Deserialisieren von Methodenargumenten und Rückgabewerten verwendet wird. |
JsonSerializerFormatting |
Ruft die Formatierung ab, die beim Serialisieren von JSON-RPC-Nachrichten verwendet werden soll, oder legt diese fest. |
MessageHandler |
Ruft den Nachrichtenhandler ab, der zum Senden und Empfangen von Nachrichten verwendet wird. |
SynchronizationContext |
Ruft die ab, die SynchronizationContext beim Aufrufen von Methoden verwendet werden soll, die von der Remotepartei angefordert werden, oder legt diesen fest. |
TraceSource |
Ruft den ab, der zum Nachverfolgen von TraceSource JSON-RPC-Nachrichten und -Ereignissen verwendet wird, oder legt diesen fest. |
Methoden
AddLocalRpcMethod(MethodInfo, Object, JsonRpcMethodAttribute) |
Fügt einen Handler für eine RPC-Methode mit einem angegebenen Namen hinzu. |
AddLocalRpcMethod(String, Delegate) |
Fügt einen Handler für eine RPC-Methode mit einem angegebenen Namen hinzu. |
AddLocalRpcMethod(String, MethodInfo, Object) |
Fügt einen Handler für eine RPC-Methode mit einem angegebenen Namen hinzu. |
AddLocalRpcTarget(Object) |
Fügt das angegebene Ziel als mögliches Objekt hinzu, das beim Empfang eingehender Nachrichten aufgerufen werden soll. Das Zielobjekt sollte nicht voneinander erben und in der Reihenfolge aufgerufen werden, in der es hinzugefügt wird. |
AddLocalRpcTarget(Object, JsonRpcTargetOptions) |
Fügt das angegebene Ziel als mögliches Objekt hinzu, das beim Empfang eingehender Nachrichten aufgerufen werden soll. Das Zielobjekt sollte nicht voneinander erben und in der Reihenfolge aufgerufen werden, in der es hinzugefügt wird. |
AddLocalRpcTarget(Type, Object, JsonRpcTargetOptions) |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
AddLocalRpcTarget<T>(T, JsonRpcTargetOptions) |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
AddRemoteRpcTarget(JsonRpc) |
Fügt eine Remote-RPC-Verbindung hinzu, damit Aufrufe an das Remoteziel weitergeleitet werden können, wenn lokale Ziele dies nicht verarbeiten. |
Attach(Stream, Object) |
Initialisiert eine neue instance der -Klasse, die JsonRpc mit serialisierten Nachrichten verwendetHeaderDelimitedMessageHandler, und beginnt sofort mit dem JsonMessageFormatterLauschen. |
Attach(Stream, Stream, Object) |
Initialisiert eine neue instance der -Klasse, die JsonRpc mit serialisierten Nachrichten verwendetHeaderDelimitedMessageHandler, und beginnt sofort mit dem JsonMessageFormatterLauschen. |
Attach(Type) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach(Type, JsonRpcProxyOptions) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach<T>() |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach<T>(IJsonRpcMessageHandler) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach<T>(IJsonRpcMessageHandler, JsonRpcProxyOptions) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach<T>(JsonRpcProxyOptions) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach<T>(Stream) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
Attach<T>(Stream, Stream) |
Erstellt einen JSON-RPC-Clientproxy, der der angegebenen Serverschnittstelle entspricht. |
CreateErrorDetails(JsonRpcRequest, Exception) |
Erstellt den JsonRpcError.ErrorDetail als Wert für die error-Eigenschaft, die als Reaktion auf eine Ausnahme von einer lokal aufgerufenen RPC-Methode an den Client zurückgesendet werden soll. |
CreateExceptionFromRpcError(JsonRpcRequest, JsonRpcError) |
Erstellt einen RemoteRpcException (oder abgeleiteten) Typ, der die in einer JSON-RPC-Fehlerantwort gefundenen Daten darstellt. Dies wird clientseitig aufgerufen, um die Ausnahme zu erzeugen, die an den RPC-Client zurückgegeben wird. |
CreateNewRequestId() |
Erstellt eine eindeutige RequestId für eine ausgehende Anforderung. |
DispatchRequestAsync(JsonRpcRequest, TargetMethod, CancellationToken) |
Ruft die -Methode für das lokale RPC-Zielobjekt auf und konvertiert die Antwort in eine JSON-RPC-Ergebnismeldung. |
Dispose() |
Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen. |
Dispose(Boolean) |
Löscht verwaltete und native Ressourcen, die von diesem instance gespeichert werden. |
GetErrorDetailsDataType(JsonRpcError) |
Bestimmt den Typ, in den das Data Objekt für eine eingehende JsonRpcError Nachricht deserialisiert werden soll. |
GetJsonRpcMethodAttribute(String, ReadOnlySpan<ParameterInfo>) |
Ruft die JsonRpcMethodAttribute für eine zuvor ermittelte RPC-Methode ab, sofern vorhanden. |
InvokeAsync(String, Object) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeAsync(String, Object[]) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeAsync<TResult>(String, Object) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeAsync<TResult>(String, Object[]) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken) |
Ruft die angegebene RPC-Methode auf. |
InvokeCoreAsync<TResult>(Nullable<Int32>, String, IReadOnlyList<Object>, CancellationToken, Boolean) |
Ruft die angegebene RPC-Methode auf. |
InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken) |
Veraltet.
Ruft die angegebene RPC-Methode auf. |
InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken, Boolean) |
Veraltet.
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken) |
Ruft die angegebene RPC-Methode auf. |
InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, CancellationToken, Boolean) |
Ruft die angegebene RPC-Methode auf. |
InvokeCoreAsync<TResult>(RequestId, String, IReadOnlyList<Object>, IReadOnlyList<Type>, IReadOnlyDictionary<String,Type>, CancellationToken, Boolean) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithCancellationAsync(String, IReadOnlyList<Object>, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithCancellationAsync(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithCancellationAsync<TResult>(String, IReadOnlyList<Object>, IReadOnlyList<Type>, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithParameterObjectAsync(String, Object, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithParameterObjectAsync<TResult>(String, Object, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
InvokeWithParameterObjectAsync<TResult>(String, Object, IReadOnlyDictionary<String,Type>, CancellationToken) |
Ruft eine angegebene Methode auf einem JSON-RPC-Server auf. |
IsFatalException(Exception) |
Gibt an, ob die Verbindung geschlossen werden soll, wenn der Server eine Ausnahme auslöst. |
LoadType(String, String) |
Versucht, einen Typ basierend auf seinem vollständigen Namen und möglicherweise dem Assemblynamen zu laden. |
NotifyAsync(String, Object) |
Ruft eine bestimmte Methode auf einem JSON-RPC-Server auf, ohne auf die Antwort zu warten. |
NotifyAsync(String, Object[]) |
Rufen Sie eine Methode auf dem Server auf, und warten Sie nicht auf deren Abschluss, Fire-and-Forget-Stil. |
NotifyAsync(String, Object[], IReadOnlyList<Type>) |
Ruft eine bestimmte Methode auf einem JSON-RPC-Server auf, ohne auf die Antwort zu warten. |
NotifyWithParameterObjectAsync(String, Object) |
Rufen Sie eine Methode auf dem Server auf, und warten Sie nicht auf deren Abschluss, Fire-and-Forget-Stil. Der Parameter wird als Objekt übergeben. |
NotifyWithParameterObjectAsync(String, Object, IReadOnlyDictionary<String,Type>) |
Ruft eine bestimmte Methode auf einem JSON-RPC-Server auf, ohne auf die Antwort zu warten. |
OnRequestTransmissionAborted(JsonRpcRequest) |
Löst das RequestTransmissionAborted-Ereignis aus. |
OnResponseReceived(JsonRpcMessage) |
Löst das ResponseReceived-Ereignis aus. |
OnResponseSent(JsonRpcMessage) |
Löst das ResponseSent-Ereignis aus. |
StartListening() |
Beginnt mit dem Lauschen eingehender Nachrichten. |
Ereignisse
Disconnected |
Wird ausgelöst, wenn die Verbindung mit dem zugrunde liegenden Stream getrennt wird. |
Explizite Schnittstellenimplementierungen
IDisposableObservable.IsDisposed |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
IJsonRpcFormatterCallbacks.RequestTransmissionAborted |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
IJsonRpcFormatterCallbacks.ResponseReceived |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
IJsonRpcFormatterCallbacks.ResponseSent |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
IJsonRpcTracingCallbacks.OnMessageDeserialized(JsonRpcMessage, Object) |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |
IJsonRpcTracingCallbacks.OnMessageSerialized(JsonRpcMessage, Object) |
Verwaltet eine JSON-RPC-Verbindung mit einer anderen Entität über einen Stream. |