Visual Studio でチャートコントロールと Zoom をデータバインド

加藤龍彦
加藤龍彦
デジタルマーケティング
標準ADO.NET プロシージャを使ってデータバインドして、Visual Studio ツールボックスのコントロールから Zoom との双方向接続を実現。この記事ではVisual Studio のグラフィカルアプローチと、ほんの数行のコードでデータバインドをする方法を説明します。

データバインドによって、UI コントロールからデータに接続できます。 CData ADO.NET Provider for API を使って、Visual Studio 上でWindows Forms およびWeb Forms とZoom をデータバインドできます。この記事で、Zoom を、ウィザードから変更をリアルタイムで反映するチャートにデータバインドする方法を説明します。 Code Walk-through セクションではチャートはほんの10行のコードで作成します。

チャートへのデータバインド

データバインドは3つのステップから構成されます。コントロールのインスタンス作成、データソースの設定、最後にデータバインドです。

接続を設定してデータベースオブジェクトを選択

下の手続きにより、データソース構成ウィザードを使ってチャートコントロールとZoom との接続を作成します。ウィザード上でデータバインドをするZoom エンティティを使います。

  1. Windows Forms プロジェクトでは、チャートコントロールをツールボックスからフォーム上にドラグ&ドロップします。チャートプロパティのデータセクションで DataSource を選択し、メニューからプロジェクトデータソースの追加を選択します。 Add a data source to be bound to the chart.
  2. 出てくるデータソース構成ウィザードでデータベース -> データセットを選択します。
  3. データ接続ステップで、「新しい接続」をクリックします。
  4. データ接続の選択ダイアログで、「変更」をクリックして、CData Zoom のデータソースを選択して、接続プロパティを入力します。下は代表的な接続文字列ですです。:

    Profile=C:\profiles\Zoom.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;

    まず、Profile 接続プロパティにZoom プロファイルのディスク上の場所を設定します(例:C:\profiles\Zoom.apip)。次に、ProfileSettings 接続プロパティにZoom の接続文字列を設定します(以下を参照)。

    Zoom API プロファイル設定

    Zoom に認証するには、OAuth 標準を使用して自分のデータに接続したり、他のユーザーが自分のデータに接続できるようにします。

    まず、OAuth アプリを作成します。https://marketplace.zoom.us/develop/create に移動し、OAuth セクションのCreate をクリックします。アプリが個々のユーザー用かアカウント全体用かを選択し、アプリを公開するためのボックスのチェックを外します。アプリに名前を付けてCreate をクリックします。その後、Client SecretClient ID が提供されます。

    以下の接続プロパティを設定すると、接続の準備が整います:

    • AuthScheme:OAuth に設定します。
    • InitiateOAuthGETANDREFRESH に設定します。InitiateOAuth を使用してOAuthAccessToken を取得するプロセスを管理できます。
    • OAuthClientID:アプリ設定で指定されているOAuth Client ID を設定します。
    • OAuthClientSecret:アプリ設定で指定されているOAuth Client Secret を設定します。
    • CallbackURL:アプリ設定で指定したRedirect URI を設定します。
  5. Connection properties for the selected data source in the Add Connection dialog. (Salesforce is shown.)
  6. 使用するデータソースオブジェクトを選択します。例は MeetingRegistrants テーブルです。 Select database objects. (Salesforce is shown.)

DataBind

データソースの追加とデータベースオブジェクトを選択したら、チャートにオブジェクトをバインドします。この例では、X軸に Id をY軸に JobTitle を設定します。

  1. チャートプロパティで、Series プロパティをクリックし、Series コレクション エディター を開きます。
  2. Series プロパティでX軸、Y軸に設定するカラムを選択します:XValueMember および YValueMember プロパティにメニューからカラムを選びます。
The axes of the chart defined in the Series Collection Editor.

チャートはこれでZoom にデータバインドされました。チャートを実行して最新のデータを表示させましょう。 The chart, filled with data at run time.

コード Walk-through

Zoom へのデータバインドはほんの数行のコードのみが必要で、3つの簡単なステップで完了できます。

  1. Zoom に接続します。
  2. APIDataAdapter を作成して、クエリを作成し、結果を入れるデータセットを作成します。
  3. 結果セットとチャートをデータバインドします。

下に完全なコードを示します:

APIConnection conn = new APIConnection("Profile=C:\profiles\Zoom.apip;Authscheme=OAuth;OAuthClientId=your_client_id;OAuthClientSecret=your_client_secret;CallbackUrl=your_callback_url;");
APICommand comm = new APICommand("SELECT Id, JobTitle FROM MeetingRegistrants WHERE State = 'NC'", conn);
APIDataAdapter da = new APIDataAdapter(comm);
DataSet dataset = new DataSet();
da.Fill(dataset);

chart1.DataSource = dataset;
chart1.Series[0].XValueMember = "Id";
chart1.Series[0].YValueMembers = "JobTitle";
// Insert code for additional chart formatting here.
chart1.DataBind();

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

API Driver で Zoom のライブデータに接続

Zoom に接続 お問い合わせ