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

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

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

Microsoft Exchange への接続

Exchange への接続には2つのスキーマがあります。

  • Microsoft Graph
  • Exchange Web Services(EWS)(非推奨)
    Note:Microsoft は、Exchange Online ユーザーに対してMicrosoft Graph への切り替えを推奨しています。

Microsoft Graph とEWS を切り替えるには、SchemaMSGraph またはEWS(非推奨)に設定します。

Microsoft Exchange OnPremises への認証

Microsoft Exchange OnPremises は、Basic(デフォルト)、Digest、Negotiate、NTLM 認証をサポートします。

Basic(デフォルト)

Microsoft Exchange OnPremises では、Basic がデフォルトの認証として設定されます。 Basic 認証を使用するには、以下のプロパティを設定します。
  • AuthSchemeBasic
  • User:ユーザーのログインID。
  • Password:ユーザーのログインパスワード。

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

Microsoft Exchange Online への認証

Microsoft Exchange Online は、複数のOAuth ベースの認証をサポートしています。 Microsoft Graph を介してExchange Online に接続する場合は、SchemaMSGraph に設定します。

認証方法の詳細は、ヘルプドキュメントの「はじめに」を参照してください。

Windows Forms コントロール

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

using (ExchangeConnection connection = new ExchangeConnection(
"User='myUser@mydomain.onmicrosoft.com';Password='myPassword';Server='https://outlook.office365.com/EWS/Exchange.asmx';Platform='Exchange_Online';")) {
  ExchangeDataAdapter dataAdapter = new ExchangeDataAdapter(
  "SELECT GivenName, Size FROM Contacts", 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[] { "Size" });
  series.ArgumentScaleType = DevExpress.XtraCharts.ScaleType.Qualitative;
  series.ArgumentDataMember = "GivenName";
  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 コントロール

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

using DevExpress.XtraCharts;

using (ExchangeConnection connection = new ExchangeConnection(
"User='myUser@mydomain.onmicrosoft.com';Password='myPassword';Server='https://outlook.office365.com/EWS/Exchange.asmx';Platform='Exchange_Online';"))
{
  ExchangeDataAdapter ExchangeDataAdapter1 = new ExchangeDataAdapter("SELECT GivenName, Size FROM Contacts", connection);
  DataTable table = new DataTable();
  ExchangeDataAdapter1.Fill(table);
  DevExpress.XtraCharts.Series series = new Series("Series1", ViewType.Bar);
  WebChartControl1.Series.Add(series);
  DataTable table = new DataTable();
  series.ValueDataMembers.AddRange(new string[] { "Size" });
  series.ArgumentScaleType = ScaleType.Qualitative;
  series.ArgumentDataMember = "GivenName";
  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.)

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

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

 ダウンロード

詳細:

Microsoft Exchange Icon Exchange ADO.NET Provider お問い合わせ

.NET アプリケーションにパワフルなMicrosoft Exchange の送受信機能を統合する最も簡単な方法です。電子メールの送受信、Exchange のメッセージ、フォルダー、カレンダーなどの管理を行うことができます。