Udostępnij za pośrednictwem


JsonRpc.InvokeCoreAsync Metoda

Definicja

Przeciążenia

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

Wywołuje określoną metodę RPC.

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

Wywołuje określoną metodę RPC

InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken)
Przestarzałe.

Wywołuje określoną metodę RPC.

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

Wywołuje określoną metodę RPC.

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

Wywołuje określoną metodę RPC

InvokeCoreAsync<TResult>(Nullable<Int64>, String, IReadOnlyList<Object>, CancellationToken, Boolean)
Przestarzałe.

Wywołuje daną metodę na serwerze JSON-RPC.

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

Wywołuje daną metodę na serwerze JSON-RPC.

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

Wywołuje określoną metodę RPC.

protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (StreamJsonRpc.RequestId id, string targetName, System.Collections.Generic.IReadOnlyList<object?>? arguments, System.Threading.CancellationToken cancellationToken);
member this.InvokeCoreAsync : StreamJsonRpc.RequestId * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Protected Function InvokeCoreAsync(Of TResult) (id As RequestId, targetName As String, arguments As IReadOnlyList(Of Object), cancellationToken As CancellationToken) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC.

Parametry

id
RequestId

Identyfikator ustanowiony przez klienta, który MUSI zawierać wartość Ciąg, Liczba lub WARTOŚĆ NULL, jeśli zostanie uwzględniona. Jeśli nie zostanie uwzględniona, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania. Nie może być zerowa ani pusta.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. Muszą być serializowalne przy użyciu wybranego IJsonRpcMessageFormatterelementu . Jeśli nullargumenty nie zostaną przekazane, żadne argumenty nie zostaną przekazane.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

Zwraca

Task<TResult>

Zadanie, którego wynikiem jest deserializowana odpowiedź z serwera JSON-RPC.

Dotyczy

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

Wywołuje określoną metodę RPC

protected virtual System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (int? id, string targetName, System.Collections.Generic.IReadOnlyList<object> arguments, System.Threading.CancellationToken cancellationToken);
abstract member InvokeCoreAsync : Nullable<int> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
override this.InvokeCoreAsync : Nullable<int> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Protected Overridable Function InvokeCoreAsync(Of TResult) (id As Nullable(Of Integer), targetName As String, arguments As IReadOnlyList(Of Object), cancellationToken As CancellationToken) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC

Parametry

id
Nullable<Int32>

Identyfikator ustanowiony przez klienta, który MUSI zawierać wartość Ciąg, Liczba lub WARTOŚĆ NULL, jeśli zostanie uwzględniona. Jeśli nie zostanie uwzględniona, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. W przypadku wartości null nie są przekazywane żadne argumenty.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

Zwraca

Task<TResult>

Zadanie, którego wynikiem jest deserializowana odpowiedź z serwera JSON-RPC.

Dotyczy

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

Przestroga

Use the InvokeCoreAsync(RequestId, ...) overload instead.

Wywołuje określoną metodę RPC.

protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (long? id, string targetName, System.Collections.Generic.IReadOnlyList<object> arguments, System.Threading.CancellationToken cancellationToken);
[System.Obsolete("Use the InvokeCoreAsync(RequestId, ...) overload instead.")]
protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (long? id, string targetName, System.Collections.Generic.IReadOnlyList<object?>? arguments, System.Threading.CancellationToken cancellationToken);
member this.InvokeCoreAsync : Nullable<int64> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
[<System.Obsolete("Use the InvokeCoreAsync(RequestId, ...) overload instead.")>]
member this.InvokeCoreAsync : Nullable<int64> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Result>
Protected Function InvokeCoreAsync(Of TResult) (id As Nullable(Of Long), targetName As String, arguments As IReadOnlyList(Of Object), cancellationToken As CancellationToken) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC.

Parametry

id
Nullable<Int64>

Identyfikator ustanowiony przez klienta, który MUSI zawierać wartość Ciąg, Liczba lub WARTOŚĆ NULL, jeśli zostanie uwzględniona. Jeśli nie zostanie uwzględniona, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania. Nie może być zerowa ani pusta.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. Muszą być serializowalne przy użyciu wybranego IJsonRpcMessageFormatterelementu . Jeśli nullargumenty nie zostaną przekazane, żadne argumenty nie zostaną przekazane.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

Zwraca

Task<TResult>

Zadanie, którego wynikiem jest deserializowana odpowiedź z serwera JSON-RPC.

Atrybuty

Dotyczy

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

Wywołuje określoną metodę RPC.

protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (StreamJsonRpc.RequestId id, string targetName, System.Collections.Generic.IReadOnlyList<object?>? arguments, System.Threading.CancellationToken cancellationToken, bool isParameterObject);
member this.InvokeCoreAsync : StreamJsonRpc.RequestId * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken * bool -> System.Threading.Tasks.Task<'Result>
Protected Function InvokeCoreAsync(Of TResult) (id As RequestId, targetName As String, arguments As IReadOnlyList(Of Object), cancellationToken As CancellationToken, isParameterObject As Boolean) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC.

Parametry

id
RequestId

Identyfikator ustanowiony przez klienta. Jeśli zostanie podana wartość domyślna, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. W przypadku wartości null nie są przekazywane żadne argumenty.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

isParameterObject
Boolean

Wartość wskazująca, czy parametr powinien zostać przekazany jako obiekt.

Zwraca

Task<TResult>

Zadanie, którego wynikiem jest deserializowana odpowiedź z serwera JSON-RPC.

Dotyczy

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

Wywołuje określoną metodę RPC

protected virtual System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (int? id, string targetName, System.Collections.Generic.IReadOnlyList<object> arguments, System.Threading.CancellationToken cancellationToken, bool isParameterObject);
abstract member InvokeCoreAsync : Nullable<int> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken * bool -> System.Threading.Tasks.Task<'Result>
override this.InvokeCoreAsync : Nullable<int> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken * bool -> System.Threading.Tasks.Task<'Result>
Protected Overridable Function InvokeCoreAsync(Of TResult) (id As Nullable(Of Integer), targetName As String, arguments As IReadOnlyList(Of Object), cancellationToken As CancellationToken, isParameterObject As Boolean) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC

Parametry

id
Nullable<Int32>

Identyfikator ustanowiony przez klienta, który MUSI zawierać wartość Ciąg, Liczba lub WARTOŚĆ NULL, jeśli zostanie uwzględniona. Jeśli nie zostanie uwzględniona, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. W przypadku wartości null nie są przekazywane żadne argumenty.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

isParameterObject
Boolean

Wartość wskazująca, czy parametr powinien zostać przekazany jako obiekt.

Zwraca

Task<TResult>

Zadanie, którego wynikiem jest deserializowana odpowiedź z serwera JSON-RPC.

Dotyczy

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

Przestroga

Use the InvokeCoreAsync(RequestId, ...) overload instead.

Wywołuje daną metodę na serwerze JSON-RPC.

protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (long? id, string targetName, System.Collections.Generic.IReadOnlyList<object> arguments, System.Threading.CancellationToken cancellationToken, bool isParameterObject);
[System.Obsolete("Use the InvokeCoreAsync(RequestId, ...) overload instead.")]
protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (long? id, string targetName, System.Collections.Generic.IReadOnlyList<object?>? arguments, System.Threading.CancellationToken cancellationToken, bool isParameterObject);
member this.InvokeCoreAsync : Nullable<int64> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken * bool -> System.Threading.Tasks.Task<'Result>
[<System.Obsolete("Use the InvokeCoreAsync(RequestId, ...) overload instead.")>]
member this.InvokeCoreAsync : Nullable<int64> * string * System.Collections.Generic.IReadOnlyList<obj> * System.Threading.CancellationToken * bool -> System.Threading.Tasks.Task<'Result>
Protected Function InvokeCoreAsync(Of TResult) (id As Nullable(Of Long), targetName As String, arguments As IReadOnlyList(Of Object), cancellationToken As CancellationToken, isParameterObject As Boolean) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC.

Parametry

id
Nullable<Int64>

Identyfikator ustanowiony przez klienta. Jeśli zostanie podana wartość domyślna, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania. Nie może być zerowa ani pusta.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. Muszą być serializowalne przy użyciu wybranego IJsonRpcMessageFormatterelementu . Jeśli nullargumenty nie zostaną przekazane, żadne argumenty nie zostaną przekazane.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

isParameterObject
Boolean

Wartość wskazująca, czy parametr powinien zostać przekazany jako obiekt.

Zwraca

Task<TResult>

Zadanie, którego wynikiem jest deserializowana odpowiedź z serwera JSON-RPC.

Atrybuty

Dotyczy

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

Wywołuje daną metodę na serwerze JSON-RPC.

protected System.Threading.Tasks.Task<TResult> InvokeCoreAsync<TResult> (StreamJsonRpc.RequestId id, string targetName, System.Collections.Generic.IReadOnlyList<object?>? arguments, System.Collections.Generic.IReadOnlyList<Type>? positionalArgumentDeclaredTypes, System.Collections.Generic.IReadOnlyDictionary<string,Type>? namedArgumentDeclaredTypes, System.Threading.CancellationToken cancellationToken, bool isParameterObject);
member this.InvokeCoreAsync : StreamJsonRpc.RequestId * string * System.Collections.Generic.IReadOnlyList<obj> * System.Collections.Generic.IReadOnlyList<Type> * System.Collections.Generic.IReadOnlyDictionary<string, Type> * System.Threading.CancellationToken * bool -> System.Threading.Tasks.Task<'Result>
Protected Function InvokeCoreAsync(Of TResult) (id As RequestId, targetName As String, arguments As IReadOnlyList(Of Object), positionalArgumentDeclaredTypes As IReadOnlyList(Of Type), namedArgumentDeclaredTypes As IReadOnlyDictionary(Of String, Type), cancellationToken As CancellationToken, isParameterObject As Boolean) As Task(Of TResult)

Parametry typu

TResult

Zwracany typ metody RPC.

Parametry

id
RequestId

Identyfikator ustanowiony przez klienta. Jeśli zostanie podana wartość domyślna, przyjmuje się, że jest to powiadomienie.

targetName
String

Nazwa metody do wywołania. Nie może być zerowa ani pusta.

arguments
IReadOnlyList<Object>

Argumenty do przekazania do wywoływanej metody. Muszą być serializowalne przy użyciu wybranego IJsonRpcMessageFormatterelementu . Jeśli nullargumenty nie zostaną przekazane, żadne argumenty nie zostaną przekazane.

positionalArgumentDeclaredTypes
IReadOnlyList<Type>

Lista Type obiektów opisujących sposób wpisywania poszczególnych elementów arguments w programie przez serwer. Jeśli zostanie określony, musi mieć dokładnie taką samą długość, jak arguments i nie zawiera żadnych null elementów. Ta wartość jest ignorowana, gdy isParameterObject ma wartość true.

namedArgumentDeclaredTypes
IReadOnlyDictionary<String,Type>

Słownik Type obiektów opisujących, w jaki sposób każdy wpis w IReadOnlyDictionary<TKey,TValue> podanym w jedynym elemecie arguments jest oczekiwany przez serwer, który ma być wpisany. Jeśli zostanie określony, musi mieć dokładnie taki sam zestaw kluczy, jak słownik zawarty w pierwszym elemecie , argumentsi nie zawiera żadnych null wartości.

cancellationToken
CancellationToken

Token, którego anulowanie powinno sygnalizować serwerowi zatrzymanie przetwarzania tego żądania.

isParameterObject
Boolean

Wartość wskazująca, czy parametr powinien zostać przekazany jako obiekt.

Zwraca

Task<TResult>

Zadanie, które kończy się odpowiedzią z serwera JSON-RPC.

Wyjątki

Wyrzucony po cancellationToken anulowaniu. Jeśli żądanie zostało już przesłane, wyjątek jest zgłaszany tylko wtedy, gdy serwer otrzymał powiadomienie o anulowaniu i odpowiedział na nie. Jeśli serwer zakończy żądanie zamiast anulować, ten wyjątek nie zostanie zgłoszony. Gdy połączenie spadnie przed odebraniem odpowiedzi, ten wyjątek jest zgłaszany, jeśli cancellationToken został anulowany.

Typowa klasa bazowa dla różnych wyjątków RPC, które mogą zostać zgłoszone. Niektóre typowe typy pochodne są wymienione indywidualnie.

Zgłaszany, gdy zwracany jest błąd z serwera w wyniku wykonania żądanej metody.

Zgłaszany, gdy serwer zgłasza, że nie znaleziono pasującej metody do wywołania.

Jeśli targetName ma wartość null.

Wyrzucony, gdy targetName jest pusty.

Jeśli to wystąpienie JsonRpc programu zostało już usunięte przed tym wywołaniem.

Zgłaszany, gdy połączenie zostanie przerwane (obok siebie) przed żądaniem lub gdy żądanie jest w toku, chyba że cancellationToken jest już zasygnalizowane.

Wszelkie wyjątki zgłaszane przez element IJsonRpcMessageFormatter (zazwyczaj z powodu błędów serializacji). W przypadku korzystania z tej opcji JsonMessageFormatter powinna mieć wartość Newtonsoft.Json.JsonSerializationException. W przypadku korzystania z tej opcji MessagePackFormatter powinna mieć wartość MessagePack.MessagePackSerializationException.

Dotyczy