Lakebase のデータをDevExpress Data Grid にデータバインドする。

加藤龍彦
加藤龍彦
デジタルマーケティング
Lakebase 用の CData ADO.NET プロバイダーをDevExpress Windows Forms とWeb コントロールとともに使用し、Lakebase をチャートに入力します。

Lakebase 用の CData ADO.NET プロバイダーはサードパーティーコントロールで使うことのできる通常のADO.NET データベースアクセスコンポーネントを実装しています。データバインドするための通常のADO.NET プロセスに従うことで、UI コントロールから実データへの双方向アクセスを可能にします。 この記事では、CData を使ってDevExpress Windows Forms とウェブコントロールにデータバインドする方法を説明します。ここでは、最新のデータを表示するチャートにデータバインドします。

Databricks Lakebase に接続するには、以下のプロパティを設定します。

  • DatabricksInstance: Databricks インスタンスまたはサーバーホスト名を指定します。形式は instance-abcdef12-3456-7890-abcd-abcdef123456.database.cloud.databricks.com です。
  • Server: Lakebase データベースをホストするサーバーのホスト名または IP アドレスを指定します。
  • Port(オプション): Lakebase データベースをホストするサーバーのポート番号を指定します。デフォルトは 5432 です。
  • Database(オプション): Lakebase サーバーへの認証後に接続するデータベースを指定します。デフォルトでは認証ユーザーのデフォルトデータベースに接続します。

OAuth クライアント認証

OAuth クライアント資格情報を使用して認証するには、サービスプリンシパルで OAuth クライアントを構成します。手順の概要は以下のとおりです。

  1. 新しいサービスプリンシパルを作成・構成する
  2. サービスプリンシパルに権限を割り当てる
  3. サービスプリンシパル用の OAuth シークレットを作成する

詳細については、ヘルプドキュメントの「Setting Up OAuthClient Authentication」セクションをご参照ください。

OAuth PKCE 認証

PKCE(Proof Key for Code Exchange)を使用した OAuth code タイプで認証するには、以下のプロパティを設定します。

  • AuthScheme: OAuthPKCE を指定します。
  • User: 認証ユーザーのユーザー ID を指定します。

詳細については、ヘルプドキュメントをご参照ください。

Windows Forms コントロール

下のコードでは、Lakebase でDevExpress のチャートに追加する方法を説明します。LakebaseDataAdapter はチャートコントロールのSeries プロパティにバインドします。コントロールのDiagram プロパティはx 軸とy 軸をカラム名として定義します。

using (LakebaseConnection connection = new LakebaseConnection(
"DatabricksInstance=lakebase;Server=127.0.0.1;Port=5432;Database=my_database;")) {
  LakebaseDataAdapter dataAdapter = new LakebaseDataAdapter(
  "SELECT ShipName, ShipCity FROM Orders WHERE ShipCountry = 'USA'", connection);

  DataTable table = new DataTable();
  dataAdapter.Fill(table);
  DevExpress.XtraCharts.Series series = new DevExpress.XtraCharts.Series();
  chartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "ShipCity" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "ShipName";
  series.ValueScaleType = DevExpress.XtraCharts.ScaleType.Numerical;
  chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
The complete code example and the resulting chart.

Web コントロール

下のコードではLakebase でDevExpress Web を操作するための設定方法を説明します。LakebaseDataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。

using DevExpress.XtraCharts;

using (LakebaseConnection connection = new LakebaseConnection(
"DatabricksInstance=lakebase;Server=127.0.0.1;Port=5432;Database=my_database;"))
{
  LakebaseDataAdapter LakebaseDataAdapter1 = new LakebaseDataAdapter("SELECT ShipName, ShipCity FROM Orders WHERE ShipCountry = 'USA'", connection);
  DataTable table = new DataTable();
  LakebaseDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "ShipCity" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "ShipName";
  series.ValueScaleType = ScaleType.Numerical;
  ((DevExpress.XtraCharts.SideBySideBarSeriesView)series.View).ColorEach = true;
}
An ASP.NET application created with the ADO.NET Provider and the DevExpress Web Forms control.(Salesforce is shown.)

はじめる準備はできましたか?

Lakebase Data Provider の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

Lakebase Icon Lakebase ADO.NET Provider お問い合わせ

Lakebaseと連携する強力な.NETアプリケーションを迅速に作成・デプロイできます。