Delen via


Hallo Kusto: uw eerste app maken

Schakelen tussen services met behulp van de vervolgkeuzelijst Versie . Meer informatie over navigatie.
Van toepassing op: ✅ Microsoft Fabric ✅ Azure Data Explorer

In dit artikel leert u het volgende:

  • Uw eerste client-app maken
  • Interactieve verificatie gebruiken
  • Voer een eenvoudige query uit waarmee Hello Kusto wordt afgedrukt.

Vereiste voorwaarden

Uw ontwikkelomgeving instellen om de Kusto-clientbibliotheek te gebruiken.

Uw app maken

Maak in uw favoriete IDE of teksteditor een project of bestand met de naam hello kusto met behulp van de conventie die geschikt is voor uw voorkeurstaal. Voeg vervolgens de volgende code toe:

  1. Voeg de Kusto-client- en stringbuilderklassen toe.

    using Kusto.Data;
    using Kusto.Data.Net.Client;
    
  2. Definieer een lege functie met de naam main en roep deze aan.

    namespace HelloKusto {
      class HelloKusto {
        static void Main(string[] args) {
        }
      }
    }
    
  3. Maak een opbouwobject voor verbindingsreeksen waarmee de cluster-URI wordt gedefinieerd en stel de verificatiemodus in op interactief. Zie Kusto-verbindingsreeksen voor meer informatie over de cluster-URI.

    var clusterUri = "https://help.kusto.windows.net/";
    var kcsb = new KustoConnectionStringBuilder(clusterUri).WithAadUserPromptAuthentication();
    

    Opmerking

    Voor interactieve verificatie hebt u een Microsoft-account of een Microsoft Entra-gebruikersidentiteit nodig. Er is geen Azure-abonnement vereist.

    In C# wordt de gebruiker mogelijk niet door het interactieve verificatieproces gevraagd als:

    • De gebruiker is al geverifieerd op het apparaat
    • Er bestaat een bestaande Kusto.Explorer- of Azure Data Explorer-webgebruikersinterfaceverificatie op het apparaat
  4. Maak een clientobject dat gebruikmaakt van het opbouwobject voor verbindingsreeksen om verbinding te maken met het cluster.

    Opmerking

    Cache en hergebruik het Kusto-clientexemplaar. Het regelmatig opnieuw maken van Kusto-clients kan prestatieproblemen in uw toepassing veroorzaken en de belasting van uw cluster verhogen.

    using (var kustoClient = KustoClientFactory.CreateCslQueryProvider(kcsb)) {
    }
    
  5. Definieer de database en query die u wilt uitvoeren. De query drukt Hello Kusto! af in een kolom met de naam Welkom.

    var database = "Samples";
    var query = "print Welcome='Hello Kusto!'";
    
  6. Voer de query uit en druk het resultaat af.

    using (var response = kustoClient.ExecuteQuery(database, query, null)) {
      response.Read();
      int columnNo = response.GetOrdinal("Welcome");
      Console.WriteLine(response.GetString(columnNo));
    }
    

    Opmerking

    De queryuitvoer komt terug in het antwoord als een object dat een of meer tabellen bevat, samengesteld uit een of meer rijen en kolommen. De indeling van het object is afhankelijk van de taal van de clientbibliotheek.

    De print kusto query retourneert één tabel met één rij en kolom.

    Het antwoord is een DataReader-object . U kunt als volgt verwijzen naar het resultaat:

    • Gebruik de methode Read() om de eerste rij te lezen
    • Gebruik de methode GetString() om de waarde van de eerste kolom op te halen

De volledige code moet er als volgt uitzien:

using Kusto.Data;
using Kusto.Data.Net.Client;

namespace HelloKusto {
  class HelloKusto {
    static void Main(string[] args) {
      string clusterUri = "https://help.kusto.windows.net/";
      var kcsb = new KustoConnectionStringBuilder(clusterUri).WithAadUserPromptAuthentication();
    
      using (var kustoClient = KustoClientFactory.CreateCslQueryProvider(kcsb)) {
        string database = "Samples";
        string query = "print Welcome='Hello Kusto!'";

        using (var response = kustoClient.ExecuteQuery(database, query, null)) {
          response.Read();
          int columnNo = response.GetOrdinal("Welcome");
          Console.WriteLine(response.GetString(columnNo));
        }
      }
    }
  }
}

Voer uw app uit

Gebruik in een opdrachtshell de volgende opdracht om uw app uit te voeren:

# Change directory to the folder that contains the hello world project
dotnet run .

U zou een resultaat moeten zien dat lijkt op de volgende uitvoer:

Hello Kusto!

Volgende stap