IDocumentsOperations.GetWithHttpMessagesAsync Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Surcharges
GetWithHttpMessagesAsync(String, IEnumerable<String>, SearchRequestOptions, Dictionary<String,List<String>>, CancellationToken) |
Récupère un document à partir de l’index de recherche. https://docs.microsoft.com/rest/api/searchservice/Lookup-Document |
GetWithHttpMessagesAsync<T>(String, IEnumerable<String>, SearchRequestOptions, Dictionary<String,List<String>>, CancellationToken) |
Récupère un document à partir de l’index de recherche. https://docs.microsoft.com/rest/api/searchservice/Lookup-Document |
GetWithHttpMessagesAsync(String, IEnumerable<String>, SearchRequestOptions, Dictionary<String,List<String>>, CancellationToken)
Récupère un document à partir de l’index de recherche. https://docs.microsoft.com/rest/api/searchservice/Lookup-Document
public System.Threading.Tasks.Task<Microsoft.Rest.Azure.AzureOperationResponse<Microsoft.Azure.Search.Models.Document>> GetWithHttpMessagesAsync (string key, System.Collections.Generic.IEnumerable<string> selectedFields, Microsoft.Azure.Search.Models.SearchRequestOptions searchRequestOptions = default, System.Collections.Generic.Dictionary<string,System.Collections.Generic.List<string>> customHeaders = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetWithHttpMessagesAsync : string * seq<string> * Microsoft.Azure.Search.Models.SearchRequestOptions * System.Collections.Generic.Dictionary<string, System.Collections.Generic.List<string>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Rest.Azure.AzureOperationResponse<Microsoft.Azure.Search.Models.Document>>
Public Function GetWithHttpMessagesAsync (key As String, selectedFields As IEnumerable(Of String), Optional searchRequestOptions As SearchRequestOptions = Nothing, Optional customHeaders As Dictionary(Of String, List(Of String)) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of AzureOperationResponse(Of Document))
Paramètres
- key
- String
Clé du document à récupérer ; Consultez https://docs.microsoft.com/rest/api/searchservice/Naming-rules pour connaître les règles de construction de clés de document valides.
- selectedFields
- IEnumerable<String>
Liste des noms de champs à récupérer pour le document ; Tout champ non récupéré sera manquant dans le document retourné.
- searchRequestOptions
- SearchRequestOptions
Paramètres supplémentaires pour l’opération
- customHeaders
- Dictionary<String,List<String>>
En-têtes qui seront ajoutés à la demande.
- cancellationToken
- CancellationToken
Jeton d'annulation.
Retours
Réponse contenant le document.
Remarques
Les surcharges non génériques des méthodes Get, GetAsync et GetWithHttpMessagesAsync permettent de mapper au mieux les types JSON dans la charge utile de réponse aux types .NET. Ce mappage n’a pas l’avantage d’informations de type précises à partir de l’index, de sorte que le mappage n’est pas toujours correct. En particulier, tenez compte des cas suivants :
- Toute valeur numérique sans virgule décimale est désérialisée en System.Int64 (long en C#, int64 en F#).
- Les valeurs à virgule flottante double précision spéciales telles que NaN et Infinity seront désérialisées en tant que type System.String plutôt que System.Double, même si elles se trouvent dans des tableaux avec des valeurs à virgule flottante régulières.
- Tout champ de chaîne avec une valeur au format DateTimeOffset sera désérialisé de manière incorrecte. Cela s’applique également à ces valeurs dans les tableaux de chaînes. Nous vous recommandons de stocker ces valeurs dans les champs Edm.DateTimeOffset plutôt que dans les champs Edm.String.
- Tout champ Edm.DateTimeOffset sera désérialisé en tant que System.DateTimeOffset, et non En tant que System.DateTime.
- Tout tableau JSON vide est désérialisé en tant que tableau de System.Object (object[] en C#, obj[] en F#).
- Tout tableau d’un type primitif est désérialisé en tant que tableau de son type .NET correspondant, et non en tant que tableau de System.Object, sauf si les valeurs ne peuvent pas toutes être désérialisées au même type. Par exemple, les tableaux [3.14, « NaN"] et ["hello », « 2016-10-10T17:41:05.123-07:00"] seront tous deux désérialisé en tant que tableaux de System.Object (object[] en C#, obj[] en F#). Cela est dû au fait que les valeurs doubles spéciales désérialisent toujours en tant que chaînes, tandis que les chaînes qui ressemblent à DateTimeOffset désérialisent toujours en tant que DateTimeOffset.
- Les champs complexes seront désérialisés de manière récursive en instances de type
Document
. De même, les champs de collection complexes sont désérialisés dans des tableaux de ces instances.
S’applique à
GetWithHttpMessagesAsync<T>(String, IEnumerable<String>, SearchRequestOptions, Dictionary<String,List<String>>, CancellationToken)
Récupère un document à partir de l’index de recherche. https://docs.microsoft.com/rest/api/searchservice/Lookup-Document
public System.Threading.Tasks.Task<Microsoft.Rest.Azure.AzureOperationResponse<T>> GetWithHttpMessagesAsync<T> (string key, System.Collections.Generic.IEnumerable<string> selectedFields, Microsoft.Azure.Search.Models.SearchRequestOptions searchRequestOptions = default, System.Collections.Generic.Dictionary<string,System.Collections.Generic.List<string>> customHeaders = default, System.Threading.CancellationToken cancellationToken = default);
abstract member GetWithHttpMessagesAsync : string * seq<string> * Microsoft.Azure.Search.Models.SearchRequestOptions * System.Collections.Generic.Dictionary<string, System.Collections.Generic.List<string>> * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Rest.Azure.AzureOperationResponse<'T>>
Public Function GetWithHttpMessagesAsync(Of T) (key As String, selectedFields As IEnumerable(Of String), Optional searchRequestOptions As SearchRequestOptions = Nothing, Optional customHeaders As Dictionary(Of String, List(Of String)) = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of AzureOperationResponse(Of T))
Paramètres de type
- T
Le type CLR qui mappe vers le schéma d'index. Les instances de ce type peuvent être récupérées en tant que documents à partir de l’index.
Paramètres
- key
- String
Clé du document à récupérer ; Consultez https://docs.microsoft.com/rest/api/searchservice/Naming-rules pour connaître les règles de construction de clés de document valides.
- selectedFields
- IEnumerable<String>
Liste des noms de champs à récupérer pour le document ; Tout champ non récupéré aura null ou valeur par défaut comme valeur de propriété correspondante dans l’objet retourné.
- searchRequestOptions
- SearchRequestOptions
Paramètres supplémentaires pour l’opération
- customHeaders
- Dictionary<String,List<String>>
En-têtes qui seront ajoutés à la demande.
- cancellationToken
- CancellationToken
Jeton d'annulation.
Retours
Réponse contenant le document.
Remarques
Les surcharges génériques des méthodes Get, GetAsync et GetWithHttpMessagesAsync prennent en charge le mappage des types de champs Recherche Azure aux types .NET via le paramètre de type T. Notez que tous les types de champs de recherche à l’exception des collections sont nullables. Nous vous recommandons donc d’utiliser des types nullables pour les propriétés de T. Le mappage de type est le suivant :
Type de champ de recherche | Type .NET | ||||||
---|---|---|---|---|---|---|---|
Edm.String | System.String (chaîne en C# et F#) | ||||||
Edm.Boolean | System.Nullable<System.Boolean> (bool? en C#, Nullable<bool> en F#) | ||||||
Edm.Double | System.Nullable<System.Double> (double? en C#, Nullable<float> en F#) | ||||||
Edm.Int32 | System.Nullable<System.Int32> (int? en C#, Nullable<int> dans F#) | ||||||
Edm.Int64 | System.Nullable<System.Int64> (long? en C#, Nullable<int64> en F#) | ||||||
Edm.DateTimeOffset | System.Nullable<System.DateTimeOffset> (DateTimeOffset? en C#, Nullable<DateTimeOffset> en F#) ou System.Nullable<System.DateTime> (DateTime en C#, Nullable<DateTime> en F#). Les deux types fonctionnent, bien que nous vous recommandons d’utiliser DateTimeOffset. Lors de la récupération de documents, les valeurs DateTime sont toujours au format UTC. Lors de l’indexation de documents, les valeurs DateTime sont interprétées comme suit :
| ||||||
Edm.GeographyPoint | Microsoft.Spatial.GeographyPoint | ||||||
Edm.ComplexType | Tout type pouvant être désérialisé à partir des objets JSON dans le champ complexe. Il peut s’agir d’un type valeur ou d’un type référence, mais nous vous recommandons d’utiliser un type référence, car les champs complexes peuvent avoir la valeur Null dans Recherche cognitive Azure. | ||||||
Collection(Edm.String) | IEnumerable<System.String> (chaîne> seq<en F#) | ||||||
Collection(Edm.Boolean) | IEnumerable<System.Boolean> (seq<bool> in F#) | ||||||
Collection(Edm.Double) | IEnumerable<System.Double> (seq<float> in F#) | ||||||
Collection(Edm.Int32) | IEnumerable<System.Int32> (seq<int in F> #) | ||||||
Collection(Edm.Int64) | IEnumerable<System.Int64> (seq<int64> in F#) | ||||||
Collection(Edm.DateTimeOffset) | IEnumerable<System.DateTimeOffset> ou IEnumerable<System.DateTime> (seq<DateTimeOffset> ou seq<DateTime> en F#). Les deux types fonctionnent, bien que nous vous recommandons d’utiliser IEnumerable<System.DateTimeOffset>. Pour plus d’informations, consultez les notes ci-dessus sur Edm.DateTimeOffset. | ||||||
Collection(Edm.GeographyPoint) | IEnumerable<Microsoft.Spatial.GeographyPoint> (seq<GeographyPoint> en F#) | ||||||
Collection(Edm.ComplexType) | IEnumerable<U> (seq<U> en F#) où U est tout type pouvant être désérialisé à partir des objets JSON dans le champ de collection complexe. Il peut s’agir d’un type valeur ou d’un type référence. |
S’applique à
Azure SDK for .NET