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

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

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

Azure Synapse への接続

Azure Synapse データベースに接続するには、認証に加えて(下記参照)、次のプロパティを設定します。

  • Server:Azure を実行しているサーバー。Azure ポータルにログインして、[Azure Synapse Analytics]->[Select your database]->[Overview]->[Server name]に進むと確認できます。
  • Database[Azure Synapse Analytics]ページのAzure ポータルに表示されるデータベース名。

Azure Synapse への認証

Azure Synapse は、Entra ID(Azure AD)、Azure サービスプリンシパル、Managed Service Identity(MSI)、パスワード(デフォルト)、Azure Password を使用する認証をサポートします。

パスワードでAzure Synapse に直接認証するには、以下のプロパティを設定します。

  • AuthScheme:Password
  • User:認証するAzure Synapse ユーザー。
  • Password:認証するAzure Synapse ユーザーのパスワード。

その他の認証方法については、ヘルプドキュメント の「はじめに」セクションを参照してください。

Windows Forms コントロール

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

using (AzureSynapseConnection connection = new AzureSynapseConnection(
"User=myuser;Password=mypassword;Server=localhost;Database=Northwind;")) {
  AzureSynapseDataAdapter dataAdapter = new AzureSynapseDataAdapter(
  "SELECT Id, ProductName FROM Products WHERE ProductName = 'Konbu'", 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[] { "ProductName" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "Id";
  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 コントロール

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

using DevExpress.XtraCharts;

using (AzureSynapseConnection connection = new AzureSynapseConnection(
"User=myuser;Password=mypassword;Server=localhost;Database=Northwind;"))
{
  AzureSynapseDataAdapter AzureSynapseDataAdapter1 = new AzureSynapseDataAdapter("SELECT Id, ProductName FROM Products WHERE ProductName = 'Konbu'", connection);
  DataTable table = new DataTable();
  AzureSynapseDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "ProductName" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "Id";
  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.)

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

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

 ダウンロード

詳細:

Azure Synapse Icon Azure Synapse ADO.NET Provider お問い合わせ

Azure Synapse データに連携する.NET アプリケーションを素早く、簡単に開発できる便利なドライバー。