IDocumentsOperations.GetWithHttpMessagesAsync メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
GetWithHttpMessagesAsync(String, IEnumerable<String>, SearchRequestOptions, Dictionary<String,List<String>>, CancellationToken)
検索インデックスからドキュメントを取得します。 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))
パラメーター
- key
- String
取得するドキュメントのキー。有効なドキュメント キーを作成するための規則については、 を参照してください https://docs.microsoft.com/rest/api/searchservice/Naming-rules 。
- selectedFields
- IEnumerable<String>
ドキュメント用に取得するフィールド名のリスト。取得されないフィールドは、返されたドキュメントに表示されません。
- searchRequestOptions
- SearchRequestOptions
操作の追加パラメーター
- customHeaders
- Dictionary<String,List<String>>
要求に追加されるヘッダー。
- cancellationToken
- CancellationToken
キャンセル トークン。
戻り値
ドキュメントを含む応答。
注釈
Get、GetAsync、GetWithHttpMessagesAsync メソッドの非ジェネリック オーバーロードでは、応答ペイロード内の JSON 型を .NET 型にマップすることをベスト エフォートで試みます。 このマッピングには、インデックスからの正確な型情報の利点がないため、マッピングが常に正しいとは限りません。 特に、次の場合に注意してください。
- 小数点のない数値は System.Int64 (C# では long、F# では int64) に逆シリアル化されます。
- NaN や Infinity などの特殊な倍精度浮動小数点値は、通常の浮動小数点値を持つ配列内にある場合でも、System.Double ではなく System.String 型として逆シリアル化されます。
- DateTimeOffset のように書式設定された値を持つ文字列フィールドは、正しく逆シリアル化されません。 これは、文字列の配列内のこのような値にも適用されます。 このような値は、Edm.String フィールドではなく Edm.DateTimeOffset フィールドに格納することをお勧めします。
- Edm.DateTimeOffset フィールドは、System.DateTime ではなく System.DateTimeOffset として逆シリアル化されます。
- 空の JSON 配列は、System.Object (C# では object[]、F# では obj[]) の配列として逆シリアル化されます。
- プリミティブ型の配列は、値をすべて同じ型に逆シリアル化できない場合を除き、System.Object の配列としてではなく、対応する .NET 型の配列として逆シリアル化されます。 たとえば、配列 [3.14, "NaN"] と ["hello", "2016-10-10T17:41:05.123-07:00"] はどちらも System.Object の配列として逆シリアル化されます (C#では object[], F#の obj[] )。 これは、特殊な二重値は常に文字列として逆シリアル化され、DateTimeOffset のような文字列は常に DateTimeOffset として逆シリアル化されるためです。
- 複合フィールドは、 型
Document
のインスタンスに再帰的に逆シリアル化されます。 同様に、複雑なコレクション フィールドは、このようなインスタンスの配列に逆シリアル化されます。
適用対象
GetWithHttpMessagesAsync<T>(String, IEnumerable<String>, SearchRequestOptions, Dictionary<String,List<String>>, CancellationToken)
検索インデックスからドキュメントを取得します。 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))
型パラメーター
- T
インデックス スキーマにマッピングされる CLR タイプ。 この型のインスタンスは、インデックスからドキュメントとして取得できます。
パラメーター
- key
- String
取得するドキュメントのキー。有効なドキュメント キーを作成するための規則については、 を参照してください https://docs.microsoft.com/rest/api/searchservice/Naming-rules 。
- selectedFields
- IEnumerable<String>
ドキュメント用に取得するフィールド名のリスト。取得されないフィールドは、返されるオブジェクトの対応するプロパティ値として null または既定値になります。
- searchRequestOptions
- SearchRequestOptions
操作の追加パラメーター
- customHeaders
- Dictionary<String,List<String>>
要求に追加されるヘッダー。
- cancellationToken
- CancellationToken
キャンセル トークン。
戻り値
ドキュメントを含む応答。
注釈
Get、GetAsync、GetWithHttpMessagesAsync メソッドのジェネリック オーバーロードでは、型パラメーター T を使用した Azure Search フィールド型と .NET 型のマッピングがサポートされています。コレクションを除くすべての検索フィールド型は null 許容であるため、T のプロパティには null 許容型を使用することをお勧めします。型マッピングは次のとおりです。
検索フィールドの種類 | .NET の種類 | ||||||
---|---|---|---|---|---|---|---|
Edm.String | System.String (C# および F# の文字列) | ||||||
Edm.Boolean | System.Nullable<System.Boolean> (C# では bool?、F# では Null 許容<ブール> 値) | ||||||
Edm.Double | System.Nullable<System.Double> (C# では double、F# では Null 許容<float> ) | ||||||
Edm.Int32 | System.Nullable<System.Int32> (c# では int、F# では Null 許容<int> ) | ||||||
Edm.Int64 | System.Nullable<System.Int64> (C# では long? 、F# では Null 許容<int64> ) | ||||||
Edm.DateTimeOffset | System.Nullable<System.DateTimeOffset> (C# では DateTimeOffset?、F#では Null 許容<DateTimeOffset> )、System.Nullable<System.DateTime> (C# では DateTime?、F# では Null 許容<DateTime> )。 どちらの型も機能しますが、DateTimeOffset を使用することをお勧めします。 ドキュメントを取得する場合、DateTime 値は常に UTC になります。 ドキュメントにインデックスを作成すると、DateTime 値は次のように解釈されます。
| ||||||
Edm.GeographyPoint | Microsoft.Spatial.GeographyPoint | ||||||
Edm.ComplexType | 複合フィールドの JSON オブジェクトから逆シリアル化できる任意の型。 値型または参照型を指定できますが、Azure Cognitive Searchでは複合フィールドが null 許容であるため、参照型を使用することをお勧めします。 | ||||||
Collection(Edm.String) | IEnumerable<System.String> (F#の seq<文字列> ) | ||||||
Collection(Edm.Boolean) | IEnumerable<System.Boolean> (F# の seq<bool> ) | ||||||
Collection(Edm.Double) | IEnumerable<System.Double> (F# の seq<float> ) | ||||||
Collection(Edm.Int32) | IEnumerable<System.Int32> (F# の seq<int> ) | ||||||
Collection(Edm.Int64) | IEnumerable<System.Int64> (F# の seq<int64> ) | ||||||
Collection(Edm.DateTimeOffset) | IEnumerable<System.DateTimeOffset> または IEnumerable<System.DateTime> (<F# では dateTimeOffset> または seq<DateTime> )。 どちらの型も機能しますが、IEnumerable<System.DateTimeOffset> を使用することをお勧めします。 詳細については、Edm.DateTimeOffset に関する上記のメモを参照してください。 | ||||||
Collection(Edm.GeographyPoint) | IEnumerable<Microsoft.Spatial.GeographyPoint> (<F# の seq GeographyPoint> ) | ||||||
Collection(Edm.ComplexType) | IEnumerable<U> (F#では seq<U> ) 。U は、複合コレクション フィールドの JSON オブジェクトから逆シリアル化できる任意の型です。 値型または参照型を指定できます。 |
適用対象
Azure SDK for .NET