共用方式為


Hello Kusto:建立您的第一個應用程式

適用於:✅Microsoft FabricAzure 數據總管

在本文中,您將瞭解如何:

  • 建立您的第一個用戶端應用程式
  • 使用互動式驗證
  • 執行一個基本查詢來列印 Hello Kusto!

先決條件

設定您的開發環境 以便使用 Kusto 客戶端程式庫。

建立您的應用程式

在慣用的 IDE 或文本編輯器中,使用適合您慣用語言的慣例,建立名為 hello kusto 的項目或檔案。 然後新增下列程式代碼:

  1. 新增 Kusto 用戶端和字串產生器類別。

    using Kusto.Data;
    using Kusto.Data.Net.Client;
    
  2. 定義名為 main 的空函式,並加以呼叫。

    namespace HelloKusto {
      class HelloKusto {
        static void Main(string[] args) {
        }
      }
    }
    
  3. 建立連接字串產生器物件,此物件會定義叢集 URI,並將驗證模式設定為互動式。 如需叢集 URI 的詳細資訊,請參閱Kusto 連接字串。

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

    注意

    若要進行互動式驗證,您需要Microsoft帳戶或Microsoft Entra 使用者身分識別。 不需要 Azure 訂用帳戶。

    在 C# 中,如果下列狀況,互動式驗證程式可能不會提示使用者:

    • 使用者已在裝置上驗證
    • 裝置上有現有的 Kusto.Explorer 或 Azure 數據總管 Web UI 驗證
  4. 建立客戶端物件,該物件會使用連接字串產生器對象來連線到叢集。

    附註

    強烈建議您快取並重複使用 Kusto 用戶端實例。 經常重新建立 Kusto 用戶端可能會導致應用程式效能降低,並增加叢集上的負載。

    using (var kustoClient = KustoClientFactory.CreateCslQueryProvider(kcsb)) {
    }
    
  5. 定義要執行的資料庫和查詢。 查詢會在名為 Welcome的欄中列印 Hello Kusto!

    var database = "Samples";
    var query = "print Welcome='Hello Kusto!'";
    
  6. 執行查詢並列印結果。

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

    備註

    查詢輸出會在回應中傳回,作為包含一個或多個數據表的物件,其中包含一個或多個數據列和數據行。 物件的格式取決於客戶端連結庫語言。

    列印 kusto 查詢會傳回具有一個數據列和數據行的單一數據表。

    回應是 DataReader 物件。 您可以參考結果,如下所示:

    • 使用 Read() 方法來讀取第一個數據列
    • 使用 GetString() 方法來取得第一個數據行的值

完整的程式代碼看起來應該像這樣:

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));
        }
      }
    }
  }
}

執行您的應用程式

在命令提示字元中,使用下列命令來執行您的應用程式:

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

您應該會看到類似下列的結果:

Hello Kusto!

下一步