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

Azure DevOps 用の CData ADO.NET プロバイダーをDevExpress Windows Forms とWeb コントロールとともに使用し、Azure DevOps をチャートに入力します。

加藤龍彦
デジタルマーケティング

最終更新日:2022-01-31

この記事で実現できるAzure DevOps 連携のシナリオ

こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。

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

AzureDevOps 接続プロパティの取得・設定方法

Azure DevOps アカウントに接続するには、Profile -> Organizations に移動し、アカウントの組織名を取得します。Organization プロパティをこの値に設定します。

Note: 複数のカタログやスキーマに存在するテーブル名もあります。テーブルをクエリする際は、Catalog およびSchema 接続プロパティ、または完全修飾テーブル名のいずれかでカタログとスキーマを指定する必要があります。

Azure DevOps への認証

Azure DevOps は、Basic 認証とAzure AD(OAuth ベース)認証の両方をサポートします。

Basic

Basic 認証でAzure DevOps に接続する場合、OrganizationPersonalAccessToken の両方を指定します。 パーソナルアクセストークンを生成するには、Azure DevOps 組織アカウントにログインし、Profile -> Personal Access Tokens -> New Token に移動します。生成されたトークンが表示されます。

Azure AD

Azure AD は、Microsoft のマルチテナント、クラウドベースのディレクトリおよびID 管理サービスです。 これはユーザーベースの認証で、AuthSchemeAzureAD に設定し、Organization をAzure DevOps Organization の名前に設定する必要があります。 Web アプリケーションを介したAzure AD への認証には、必ずカスタムOAuth アプリケーションの作成が必要です。 詳しい認証方法は、ヘルプドキュメント の「Azure DevOps への認証」セクションを参照してください。

Windows Forms コントロール

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

using (AzureDevOpsConnection connection = new AzureDevOpsConnection( "AuthScheme=Basic;Organization=MyAzureDevOpsOrganization;ProjectId=MyProjectId;PersonalAccessToken=MyPAT;")) { AzureDevOpsDataAdapter dataAdapter = new AzureDevOpsDataAdapter( "SELECT Id, BuildNumber FROM Builds WHERE Reason = 'Manual'", 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[] { "BuildNumber" }); 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 DevOps でDevExpress Web を操作するための設定方法を説明します。AzureDevOpsDataAdapter はチャートのSeries プロパティにバインドします。Diagram プロパティはx 軸とy 軸をカラム名として定義します。 using DevExpress.XtraCharts; using (AzureDevOpsConnection connection = new AzureDevOpsConnection( "AuthScheme=Basic;Organization=MyAzureDevOpsOrganization;ProjectId=MyProjectId;PersonalAccessToken=MyPAT;")) { AzureDevOpsDataAdapter AzureDevOpsDataAdapter1 = new AzureDevOpsDataAdapter("SELECT Id, BuildNumber FROM Builds WHERE Reason = 'Manual'", connection); DataTable table = new DataTable(); AzureDevOpsDataAdapter1.Fill(table); DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar); WebChartControl1.Series.Add(series); DataTable table = new DataTable(); series.ValueDataMembers.AddRange(new string[] { "BuildNumber" }); 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.)

関連コンテンツ

トライアル・お問い合わせ

30日間無償トライアルで、CData のリアルタイムデータ連携をフルにお試しいただけます。記事や製品についてのご質問があればお気軽にお問い合わせください。