Megosztás a következőn keresztül:


2. lépés – A keresési index létrehozása és betöltése

Folytassa a kereséssel kompatibilis webhely összeállítását az alábbi lépések végrehajtásával:

  • Új index létrehozása
  • Adatok betöltése

A program az Azure.Search.Documents szolgáltatást használja a .NET-hez készült Azure SDK-ban:

Mielőtt hozzákezd, győződjön meg arról, hogy van helye a keresési szolgáltatásban egy új indexhez. Az ingyenes szint korlátja három index. Az alapszintű szint korlátja 15.

  1. A Visual Studio Code-ban nyissa meg a Program.cs fájlt az alkönyvtárban, azure-search-static-web-app/bulk-insertés cserélje le a következő változókat a saját értékeire az Azure Search SDK-val való hitelesítéshez.

    • YOUR-SEARCH-SERVICE-NAME (nem a teljes URL-cím)
    • YOUR-SEARCH-ADMIN-API-KEY (lásd: API-kulcsok keresése)
    
    using Azure;
    using Azure.Search.Documents;
    using Azure.Search.Documents.Indexes;
    using Azure.Search.Documents.Indexes.Models;
    using AzureSearch.BulkInsert;
    using ServiceStack;
    
    const string BOOKS_URL = "https://raw.githubusercontent.com/Azure-Samples/azure-search-sample-data/main/good-books/books.csv";
    const string SEARCH_ENDPOINT = "https://YOUR-SEARCH-RESOURCE-NAME.search.windows.net";
    const string SEARCH_KEY = "YOUR-SEARCH-ADMIN-KEY";
    const string SEARCH_INDEX_NAME = "good-books";
    
    Uri searchEndpointUri = new(SEARCH_ENDPOINT);
    
    SearchClient client = new(
        searchEndpointUri,
        SEARCH_INDEX_NAME,
        new AzureKeyCredential(SEARCH_KEY));
    
    SearchIndexClient clientIndex = new(
        searchEndpointUri,
        new AzureKeyCredential(SEARCH_KEY));
    
    await CreateIndexAsync(clientIndex);
    await BulkInsertAsync(client);
    
    static async Task CreateIndexAsync(SearchIndexClient clientIndex)
    {
        Console.WriteLine("Creating (or updating) search index");
        SearchIndex index = new BookSearchIndex(SEARCH_INDEX_NAME);
        var result = await clientIndex.CreateOrUpdateIndexAsync(index);
    
        Console.WriteLine(result);
    }
    
    static async Task BulkInsertAsync(SearchClient client)
    {
        Console.WriteLine("Download data file");
        using HttpClient httpClient = new();
    
        var csv = await httpClient.GetStringAsync(BOOKS_URL);
    
        Console.WriteLine("Reading and parsing raw CSV data");
        var books =
            csv.ReplaceFirst("book_id", "id").FromCsv<List<BookModel>>();
    
        Console.WriteLine("Uploading bulk book data");
        _ = await client.UploadDocumentsAsync(books);
    
        Console.WriteLine("Finished bulk inserting book data");
    }
    
  2. Nyisson meg egy integrált terminált a Visual Studio Code-ban a projektkönyvtár alkönyvtárához. azure-search-static-web-app/bulk-insert

  3. Futtassa a következő parancsot a függőségek telepítéséhez.

    dotnet restore
    
  1. Továbbra is ugyanabban az alkönyvtárban (azure-search-static-web-app/bulk-insert) futtassa a programot:

    dotnet run
    
  2. A kód futtatásakor a konzol megjeleníti az előrehaladást. A következő kimenetnek kell megjelennie.

     Creating (or updating) search index
     Status: 201, Value: Azure.Search.Documents.Indexes.Models.SearchIndex
     Download data file
     Reading and parsing raw CSV data
     Uploading bulk book data
     Finished bulk inserting book data
    

Az új keresési index áttekintése

A feltöltés befejezése után a keresési index készen áll a használatra. Tekintse át az új indexet az Azure Portalon.

  1. Az Azure Portalon keresse meg a keresési szolgáltatást.

  2. A bal oldalon válassza a Kereséskezelési > indexek lehetőséget, majd a jó könyvek indexét.

    Az Indexet megjelenítő Azure Portal bővíthető képernyőképe.

  3. Alapértelmezés szerint az index megnyílik a Kereséskezelő lapon. A Keresés gombra kattintva dokumentumokat ad vissza az indexből.

    Az Azure Portal kiterjeszthető képernyőképe a keresési eredményekről

Tömeges importálási fájlmódosítások visszaállítása

A fájl módosításainak visszaállításához használja az alábbi Git-parancsot a bulk-insert Visual Studio Code integrált termináljában.Program.cs Ezekre nincs szükség az oktatóanyag folytatásához, és nem szabad mentenie vagy leküldnie az API-kulcsokat vagy a keresési szolgáltatás nevét az adattárba.

git checkout .

Következő lépések

A statikus webalkalmazás üzembe helyezése