Share via


Exchange の EWS のフォルダーとアイテム

フォルダーおよびメールボックスのアイテムと、EWS マネージ API または EWS クライアントでこれらのアイテムを表す方法について説明します。

フォルダーは、Exchange メールボックスの構成要素です。 フォルダーには、メール メッセージ、連絡先、予定、会議、タスクなどのメールボックス アイテムを含めたり、その他のフォルダーを含めたりすることができます。 Exchange にはさまざまな種類のフォルダーが含まれていますが、フォルダーの種類は非常によく似ています。 主な違いは、含まれているアイテムの種類です。

ただし、アイテムには固有の種類があります。 アイテムの種類ごとに、アイテムを定義するプロパティまたはスキーマの異なるセットがあります。 この記事では、利用可能なフォルダーとアイテムの種類、およびそれらの相違点について説明します。

フォルダー

フォルダーはすべて、同じ基本クラスまたは基本型から派生します。具体的には、EWS マネージ API では Folder クラス、EWS では Folder 型から派生します。 次の図は、EWS マネージ API のクラスおよび EWS の型を示しています。

図 1. EWS マネージ API フォルダー クラスと EWS フォルダー型

EWS Managed API Folder クラスから派生するクラスと EWS Folder タイプから派生するタイプ (CalendarFolder、ContactsFolder、SearchFolder、および TasksFolder) が表示された図。

Folder クラスと Folder 型の主な違いは、Folder 型で作成できるのは特定の種類のアイテムのみであるという点です。 もう 1 つの違いは、クライアントでフォルダー内の情報が表示される方法です。 たとえば、Exchange では、予定表フォルダーで予定を作成できます。 予定を作成した後に他の種類のアイテムを予定表フォルダーに移動することはできますが、それらのアイテムは Outlook では表示されません。 Outlook では、フォルダーに別の種類のアイテムが存在しているとしても、予定や会議などの予定表アイテムだけが予定表フォルダーに表示されます。

表 1. EWS マネージ API フォルダー クラスと EWS フォルダー型

EWS マネージ API のクラス EWS の型 FolderClass 値 内容 メモ
Folder
Folder
IPF.Note
メール メッセージまたはフォルダー。
これは、次の EWS マネージ API の WellKnownFolderName フォルダーおよび EWS の DistinguishedFolderId フォルダーの汎用 Folder クラスまたは型です。
  • ルート (IPM サブツリー)
  • NonIpmSubtree
  • 受信トレイ
  • 削除済みアイテム
  • 下書き
  • ジャーナル
  • メモ
  • 送信トレイ
  • 送信済みアイテム
  • メッセージ フォルダー
  • 迷惑メール
  • ボイス メール
CalendarFolder
CalendarFolder
IPF.Appointment
予定および会議。
ユーザーが会議出席依頼に応答すると、予定は EWS マネージ API の WellKnownFolderName.Calendar または EWS の DistinguishedFolderId.CalendarFolder にのみ追加されます。 これらのフォルダーだけが、会議出席依頼や応答との自動対話をサポートします。

この Folder クラスまたは Folder 型は、予定表ビューの使用をサポートしており、EWS マネージ API の Folder.FindItem メソッドと CalendarView クラス、EWS の FindItem 操作と CalendarView 要素を使用して、開始日と終了日に基づいて予定および会議を取得します。
ContactsFolder
ContactsFolder
IPF.Contact
連絡先と配布リスト。
なし。
SearchFolder
SearchFolder
IPF.Note
内容は、制限またはフィルターによって決まります。 検索フォルダーにサブフォルダーは含まれていません。
検索条件に一致するアイテムは、実際には検索フォルダーに含まれていません。そうではなく、メールボックスの他の場所にあります。
検索フォルダーを Outlook で使用可能にするには、検索 (Finder) フォルダーに検索 (Search) フォルダーを作成します。
TasksFolder
TasksFolder
IPF.Task
行うべき作業アイテムが含まれています。
なし。

フォルダー構造

フォルダーは、メールボックスの構造を提供します。 これには、EWS の「インフォメーション ストアの先頭」と呼ばれる IPM サブツリーが含まれます。ここで、ほとんどのユーザーは、自分のメールボックスに加え、EWS の非 IPM サブツリーまたはルートに存在する、普段目にすることがないシステム フォルダーを操作します。 ユーザー用のフォルダー構造を示す次の図に、どのフォルダーがユーザーのアイテムで、どれがシステム フォルダーであるかを示します。

図 2. メールボックスのアイテムおよびシステム フォルダー

ルート内のシステム フォルダー (インフォメーション ストア内の Favorites、Finder、FreeBusy Data、Top など) が示された図。インフォメーション ストアの Top には、Calendar、Contacts などのユーザー フォルダーがあります。

既知のフォルダー

メールボックス内のフォルダーのうち、一部は特別なフォルダーです。 これらは、EWS マネージ API の既知のフォルダー、または EWS の識別フォルダーに相当します。 これらのフォルダーの一部には、フォルダー名、フォルダー構造内のフォルダー名、および削除できるかどうかに関する制限があります。 その他の "汎用" (特殊ではない) フォルダーには、同じ制限はありません。 ルート システム、ユーザー、および検索フォルダーであり、ほとんどの実装に適用可能であるため、次のよく知られているフォルダーまたは識別フォルダーを理解することが重要です。

表 2. 基本的な既知のフォルダーおよび識別フォルダー

フレンドリ名 EWS マネージ API の WellKnownFolderName EWS の DistinguishedFolderId 説明
ルート (非 IPM サブツリー)
WellKnownFolderName.Root
DistinguishedFolderId.root
非 IPM サブツリーとも呼ばれる、メールボックスのルート フォルダーが含まれます。 このフォルダーには親が含まれていないため、フォルダーを移動、コピー、名前変更、削除することはできません。 各メッセージ ストアには 1 つのルート フォルダーだけが含まれます。
インフォメーション ストアの先頭 (IPM サブツリー)
WellKnownFolderName.MsgFolderRoot
DistinguishedFolderId.msgfolderroot
受信トレイやユーザーのその他のフォルダーが含まれます。
検索 (検索フォルダー)
WellKnownFolderName.SearchFolders
DistinguishedFolderId.searchfolders
Outlook で表示可能な検索フォルダーが含まれます。

EWS マネージ API の WellKnownFolderName プロパティの値の完全な一覧については、WellKnownFolderName 列挙体を参照してください。 EWS の DistinguishedFolderId 値の完全な一覧については、DistinguishedFolderId を参照してください。

フォルダーのプロパティ

EWS マネージ API では、フォルダーのプロパティはすべて基本 Folder クラスから派生しています。 さらに EWS では、すべてのフォルダーは、Folder 型で使用可能なフォルダーの要素を使用します。 ほとんどのフォルダー関連のプロパティおよび要素 (親フォルダーの ID、表示名など) は単純ですが、いくつかのプロパティおよび要素については、もう少し詳しい説明が必要です。

EWS マネージ API の Folder.FolderClass プロパティまたは EWS の FolderClass 要素には注意すべき次の点があります。

  • プロパティまたは要素の値を設定する場合、その値はフォルダーの派生クラスまたは型に一致していなければなりません。 たとえば、FolderClass プロパティまたは要素で、そのフォルダーが連絡先フォルダーであることを示すことはできませんが、フォルダーのクラスまたは型が、そのフォルダーが予定表フォルダーであることを示します。

  • FolderClass プロパティまたは要素を設定せずに特定の型のフォルダーを作成したり、汎用フォルダー型でフォルダーを作成して FolderClass プロパティまたは要素を指定したりできます。 どちらのオプションで作成しても、同じ結果になります。

  • 特定の型のフォルダーを作成するか、FolderClass プロパティまたは要素自体を設定して、FolderClass 値を設定した後は、その値を変更することはできません。 たとえば、IPF.Note フォルダーを IPF.Contact フォルダーに変更することはできません。 ただし、IPF.Note.Contoso フォルダーに変更することはできます。

  • 定義済みのどのプレフィックスも使用していない FolderClass 値は、IPF.Note フォルダーとして扱われます。 たとえば、IAmAFolderClass の FolderClass 値は、IPF.Note フォルダーとして扱われます。

フォルダー クラスの値は、拡張可能です。 つまり、表 1 に記載されている既定の FolderClass 値はプレフィックスとして扱われ、カスタム値を追加することができます。 たとえば、IPF.Contact.Contoso の FolderClass 値を使用して作成するフォルダーは、連絡先フォルダーとして扱われます。

EWS マネージ API の Folder.EffectiveRights プロパティまたは EWS の EffectiveRights 要素を使用して、削除、読み取り、変更など、クライアントがフォルダーに対して持っているアクセス許可を確認できます。

パブリック フォルダー

パブリック フォルダーは、共有アクセスのために設計された、情報を収集、整理してワークグループや組織内の他のユーザーと共有するための容易かつ効果的な方法です。 パブリック フォルダーを使用して、配布グループのコンテンツをアーカイブすることもできます。 パブリック フォルダーの詳細については、「Exchange での EWS を使用したパブリック フォルダー アクセス」を参照してください。

隠しフォルダー

Exchange がメールボックスのルートに作成するすべてのフォルダーは非表示にされます。EWS マネージ API または EWS を使用して、「インフォメーション ストアの先頭」の下にある他のフォルダーを非表示にすることもできます。 隠しフォルダーの詳細については、「Exchange で EWS を使用して隠しフォルダーを操作する」を参照してください。

検索フォルダー

検索フォルダーは、検索フィルターを定義するプロパティまたは要素があること以外は、通常のフォルダーと同じです。 検索フォルダーは Exchange メールボックスの任意のフォルダー内に作成できます。その方法は、他のフォルダーを作成する場合と同じです。 ただし、検索フォルダーを Outlook、Outlook Web App、Outlook Live に表示するには、EWS マネージ API を使用して作成した SearchFolder オブジェクトは WellKnownFolderName.SearchFolders フォルダーに配置し、EWS を使用して作成した SearchFolder 型は DistinguishedFolderId.SearchFolders フォルダーに配置する必要があります。 検索フォルダーは、別の場所に作成されていても使用可能であり、カスタム クライアント アプリケーションで表示することができます。

アイテム

Exchange での EWS はメールボックス内の個々のメール メッセージ、予定、会議、連絡先、配布リスト、タスク、投稿、および他のアイテムを表すために、アイテムを使用します。 アイテムは、厳密に型指定されているか (関連付けられている特定のクラスまたはスキーマが含まれるアイテム)、厳密に型指定されていないか (汎用アイテム) のいずれかになります。 汎用アイテムは、EWS マネージ API の Item オブジェクトおよび EWS の Item 型です。 メール メッセージ、連絡先、配布リスト、投稿、タスクなどの共通のアイテムは、厳密に型指定されており、スキーマ化された特定のプロパティまたは要素を設定することができます。

表 3. 厳密に型指定されたアイテム

EWS マネージ API のアイテムの種類 EWS のアイテムの要素
Appointment
CalendarItem
Contact
Contact
ContactGroup
DistributionList
EmailMessage
Message
PostItem
PostItem
Task
Task

EWS マネージ API の厳密に型指定されたアイテムは、基本 Item クラスから派生します。 ただし、通常は、Item クラスを直接操作するのではなく、表 3 に記載されている派生した型のいずれかを操作します。 ItemCollection クラスを操作する場合は、Item クラスのインスタンスを直接操作することも可能です。 その場合、Item クラスのインスタンスが表す、ストア内のアイテムの種類を決定するロジックを実装する必要があります。 そのアイテムを操作するには、アイテムを表すクラスのインスタンスを使用してアイテムにバインドする必要があります。

フォルダー内のアイテム

一部のフォルダーには、格納できるアイテムの種類について制限があります。 これらは、Exchange メールボックス データベースがフォルダーに適用する制限であり、クライアント ビューの制限ではありません。

表 4. フォルダーのアイテムの制限

EWS マネージ API のフォルダー クラス EWS のフォルダー型 制限
基本フォルダー クラス
Folder
EWS マネージ API の EmailMessage オブジェクトと PostItem オブジェクト、EWS の Message 型または PostItem 型は、汎用フォルダー内にのみ作成できます。 汎用フォルダーに他の種類のアイテムを移動することはできますが、それらのアイテムはクライアントでは表示されません。
CalendarFolder
CalendarFolder
予定表フォルダー内には、EWS マネージ API の Appointment オブジェクトおよび EWS の CalendarItem 型のみを作成することができます。 予定表フォルダーに他の種類のアイテムを移動することはできますが、それらのアイテムはクライアントでは表示されません。
ContactsFolder
ContactsFolder
連絡先フォルダー内には、EWS マネージ API の Contact オブジェクトと ContactGroup オブジェクト、EWS の Contact 型または DistributionList 型のみを作成できます。 連絡先フォルダーに他の種類のアイテムを移動することはできますが、それらのアイテムはクライアントでは表示されません。
SearchFolder
SearchFolder
制限なし。 アイテムは実際には検索フォルダーに配置されません。メールボックス内の他の場所にあります。
TasksFolder
TasksFolder
タスク フォルダー内には、EWS マネージ API の Task オブジェクト、EWS の Task 型のみを作成できます。 タスク フォルダーに他の種類のアイテムを移動することはできますが、それらのアイテムはクライアントでは表示されません。

以前の製品バージョンからのアップグレード

以前の製品バージョンと現在の製品バージョンでは、フォルダーの大部分に変更はありません。 ただし、以前のバージョンの Exchange では、メッセージング レコード管理 (MRM) を実行する場合に管理フォルダーを使用することに注意してください。 Exchange Online、Office 365 の一部としての Exchange Online、Exchange 2013 以降のバージョンの Exchange では、MRM のアイテム保持ポリシーが使用されます。 管理フォルダーをアップグレードしてアイテム保持ポリシーを使用することができます。

以前および現在の製品バージョンで、アイテムは変更されていません。

このセクションの内容

関連項目