MessagePackFormatter 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.
Serializza JSON-RPC messaggi usando MessagePack (un formato binario veloce e compatto).
public class MessagePackFormatter : IDisposable, StreamJsonRpc.IJsonRpcInstanceContainer, StreamJsonRpc.IJsonRpcMessageFactory, StreamJsonRpc.IJsonRpcMessageFormatter, StreamJsonRpc.Reflection.IJsonRpcFormatterState, StreamJsonRpc.Reflection.IJsonRpcFormatterTracingCallbacks
public class MessagePackFormatter : StreamJsonRpc.FormatterBase, StreamJsonRpc.IJsonRpcMessageFactory, StreamJsonRpc.IJsonRpcMessageFormatter, StreamJsonRpc.Reflection.IJsonRpcFormatterTracingCallbacks
public class MessagePackFormatter : IDisposable, StreamJsonRpc.IJsonRpcInstanceContainer, StreamJsonRpc.IJsonRpcMessageFormatter, StreamJsonRpc.Reflection.IJsonRpcFormatterState, StreamJsonRpc.Reflection.IJsonRpcFormatterTracingCallbacks
type MessagePackFormatter = class
interface IJsonRpcMessageFormatter
interface IJsonRpcInstanceContainer
interface IJsonRpcFormatterState
interface IJsonRpcFormatterTracingCallbacks
interface IJsonRpcMessageFactory
interface IDisposable
type MessagePackFormatter = class
inherit FormatterBase
interface IJsonRpcMessageFormatter
interface IJsonRpcFormatterTracingCallbacks
interface IJsonRpcMessageFactory
type MessagePackFormatter = class
interface IJsonRpcMessageFormatter
interface IJsonRpcInstanceContainer
interface IJsonRpcFormatterState
interface IJsonRpcFormatterTracingCallbacks
interface IDisposable
Public Class MessagePackFormatter
Implements IDisposable, IJsonRpcFormatterState, IJsonRpcFormatterTracingCallbacks, IJsonRpcInstanceContainer, IJsonRpcMessageFactory, IJsonRpcMessageFormatter
Public Class MessagePackFormatter
Inherits FormatterBase
Implements IJsonRpcFormatterTracingCallbacks, IJsonRpcMessageFactory, IJsonRpcMessageFormatter
Public Class MessagePackFormatter
Implements IDisposable, IJsonRpcFormatterState, IJsonRpcFormatterTracingCallbacks, IJsonRpcInstanceContainer, IJsonRpcMessageFormatter
- Ereditarietà
-
MessagePackFormatter
- Ereditarietà
- Implementazioni
Commenti
L'implementazione di MessagePack usata qui proviene da https://github.com/neuecc/MessagePack-CSharp. Il file README in tale sito di progetto descrive i casi d'uso e le relative prestazioni rispetto alle implementazioni alternative .NET MessagePack e questo sembra essere il migliore di gran lunga.
Costruttori
| Nome | Descrizione |
|---|---|
| MessagePackFormatter() |
Inizializza una nuova istanza della classe MessagePackFormatter. |
Proprietà
| Nome | Descrizione |
|---|---|
| ApplicableMethodAttributeOnDeserializingMethod |
Ottiene l'oggetto JsonRpcMethodAttribute presente nel metodo che può essere richiamato per gestire la richiesta in ingresso, se applicabile. (Ereditato da FormatterBase) |
| DefaultUserDataSerializationOptions |
Ottiene l'impostazione predefinita utilizzata MessagePack.MessagePackSerializerOptions per i dati utente (argomenti, valori restituiti ed errori) nelle chiamate RPC prima di qualsiasi chiamata a SetMessagePackSerializerOptions(MessagePackSerializerOptions). |
| DuplexPipeTracker |
Ottiene l'helper per il marshalling delle pipe come argomenti del metodo RPC. (Ereditato da FormatterBase) |
| EnumerableTracker |
Ottiene l'helper per il marshalling IAsyncEnumerable<T> negli argomenti del metodo RPC o valori restituiti. (Ereditato da FormatterBase) |
| FormatterProgressTracker |
Ottiene l'istanza MessageFormatterProgressTracker contenente metodi utili per facilitare l'implementazione dei formattatori di messaggi. (Ereditato da FormatterBase) |
| JsonRpc |
Ottiene l'oggetto JsonRpc associato a questo formattatore. (Ereditato da FormatterBase) |
| MultiplexingStream |
Ottiene o imposta l'oggetto MultiplexingStream che può essere utilizzato per stabilire la comunicazione fuori banda,ad esempio argomenti di marshalling IDuplexPipe . |
Metodi
| Nome | Descrizione |
|---|---|
| Deserialize(ReadOnlySequence<Byte>) |
Deserializza un oggetto JsonRpcMessage. |
| Dispose() |
Serializza JSON-RPC messaggi usando MessagePack (un formato binario veloce e compatto). |
| Dispose() |
Serializza JSON-RPC messaggi usando MessagePack (un formato binario veloce e compatto). (Ereditato da FormatterBase) |
| Dispose(Boolean) |
Elimina le risorse gestite e native mantenute da questa istanza. |
| Dispose(Boolean) |
Elimina le risorse gestite e native mantenute da questa istanza. (Ereditato da FormatterBase) |
| GetJsonText(JsonRpcMessage) |
Ottiene una rappresentazione JSON per un determinato messaggio a scopo di traccia. |
| Serialize(IBufferWriter<Byte>, JsonRpcMessage) |
Serializza un oggetto JsonRpcMessage. |
| SetMessagePackSerializerOptions(MessagePackSerializerOptions) |
Imposta l'oggetto MessagePack.MessagePackSerializerOptions da utilizzare per la serializzazione dei dati utente. |
| TrackDeserialization(JsonRpcMessage, ReadOnlySpan<ParameterInfo>) |
Imposta lo stato per tenere traccia della deserializzazione di un messaggio. (Ereditato da FormatterBase) |
| TrackSerialization(JsonRpcMessage) |
Imposta lo stato per tenere traccia della serializzazione di un messaggio. (Ereditato da FormatterBase) |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IJsonRpcFormatterState.DeserializingMessageWithId |
Ottiene l'ID della risposta attualmente deserializzata. |
| IJsonRpcFormatterState.DeserializingMessageWithId |
Ottiene l'ID della risposta attualmente deserializzata. (Ereditato da FormatterBase) |
| IJsonRpcFormatterState.SerializingMessageWithId |
Ottiene l'ID della richiesta o della risposta attualmente serializzata. |
| IJsonRpcFormatterState.SerializingMessageWithId |
Ottiene l'ID della richiesta o della risposta attualmente serializzata. (Ereditato da FormatterBase) |
| IJsonRpcFormatterState.SerializingRequest |
Ottiene un valore che indica se un oggetto JsonRpcRequest viene serializzato. |
| IJsonRpcFormatterState.SerializingRequest |
Ottiene un valore che indica se un oggetto JsonRpcRequest viene serializzato. (Ereditato da FormatterBase) |
| IJsonRpcFormatterTracingCallbacks.OnSerializationComplete(JsonRpcMessage, ReadOnlySequence<Byte>) |
Serializza JSON-RPC messaggi usando MessagePack (un formato binario veloce e compatto). |
| IJsonRpcInstanceContainer.Rpc |
Imposta l'istanza JsonRpc di . |
| IJsonRpcInstanceContainer.Rpc |
Imposta l'istanza JsonRpc di . (Ereditato da FormatterBase) |
| IJsonRpcMessageFactory.CreateErrorMessage() |
Crea un'istanza di JsonRpcError adatta per la IJsonRpcMessageFormattertrasmissione su . |
| IJsonRpcMessageFactory.CreateRequestMessage() |
Crea un'istanza di JsonRpcRequest adatta per la IJsonRpcMessageFormattertrasmissione su . |
| IJsonRpcMessageFactory.CreateResultMessage() |
Crea un'istanza di JsonRpcResult adatta per la IJsonRpcMessageFormattertrasmissione su . |