上一篇文章(使用 Azure.Search.Documents
Azure Blob 搜尋中的 JSON 資料 -建立環境 ),我們建立 1000 筆 JSON 資料
我們也建立了索引,索引子,資料來源,接下來我們要試試看在程式這邊,我們怎麼透過建立號的索引進行搜尋
首先,在 C# 專案這邊我們必須要先透過 nuget 下載 Azure.Search.Documents ,我這邊在寫文章的時候是 11.3

1. 安裝完 Azure.Search.Documents 後我們先測試一下搜尋 Id 為 USER99 開頭,所以按照上一篇我建立的資料,應該會搜尋到 USER99, USER990~USER999 所以是
11 個
///
/// 搜尋 USER99 開頭的資料
///
private static void Search1() {
Console.WriteLine("============ Search USER99* ============ ");
var indexClient = new Azure.Search.Documents.Indexes.SearchIndexClient(new Uri(SearchServiceEndPoint), new Azure.AzureKeyCredential(AdminApiKey));
var res = indexClient.GetSearchClient("azureblob-index").Search("Id USER99*");
foreach (Azure.Search.Documents.Models.SearchResult result in res.Value.GetResults())
{
Console.WriteLine(Newtonsoft.Json.JsonConvert.SerializeObject(result.Document));
}
Console.WriteLine("Total Count :"+ res.Value.GetResults().Count());
Console.WriteLine("============END Search USER9* ============ ");
}
2. 搜尋 USER99開頭,並且Num 需要>=990 ,這樣搜尋出來 count 應該是 10個。
///
/// 搜尋 USER99 & Num>=990 開頭的資料
///
private static void Search2()
{
Console.WriteLine("============ Search USER99* & Num>=990 ============ ");
var options = new Azure.Search.Documents.SearchOptions();
options.Filter = "Num ge 990";
var indexClient = new Azure.Search.Documents.Indexes.SearchIndexClient(new Uri(SearchServiceEndPoint), new Azure.AzureKeyCredential(AdminApiKey));
var res = indexClient.GetSearchClient("azureblob-index").Search("Id USER9*", options);
foreach (Azure.Search.Documents.Models.SearchResult result in res.Value.GetResults())
{
Console.WriteLine(Newtonsoft.Json.JsonConvert.SerializeObject(result.Document));
}
Console.WriteLine("Total Count :" + res.Value.GetResults().Count());
Console.WriteLine("============END Search USER9* ============ ");
}
Result:

reference:
https://docs.microsoft.com/zh-tw/azure/search/search-howto-dotnet-sdk
https://docs.microsoft.com/zh-tw/azure/search/search-query-simple-examples
https://docs.microsoft.com/zh-tw/azure/search/