単一のコンテナに対する複数のデータ オブジェクトの格納をサポートするクラスを提供します。
Package は、移植性と効率的なアクセスを実現するために、定義済みの物理形式の単一エンティティへオブジェクトを編成する場合に使用できる抽象クラスです。
ZIP ファイルは、Package の主要な物理形式です。他の Package 実装では、XML ドキュメント、データベース、Web サービスなどの別の物理形式を使用することもできます。
ファイル システムと同様に、Package に含まれている項目は、フォルダおよびファイルの階層的な編成で参照されます。
Package 自体は抽象クラスですが、ZipPackage 派生クラスは、Open メソッドで既定として使用されます。
PackagePart ("パーツ") は、Package に格納されるオブジェクトを表す抽象クラスです。
PackageRelationship ("リレーションシップ") は、ソースの Package または PackagePart と、ターゲット オブジェクトの間の関連付けを定義します。PackageRelationship には、次の 2 つの種類があります。またそれぞれの種類には、2 つの形式があります。
リレーションシップのソース Package またはソース PackagePart は、リレーションシップの "所有者" と見なされます。ソース オブジェクトが削除されると、ソース オブジェクトによって所有されているリレーションシップもすべて削除されます。リレーションシップを作成または削除しても、ソース オブジェクトやターゲット オブジェクトは物理的には変更されません。
PackageDigitalSignature ("デジタル署名") は、Package に含まれるデジタル署名を表すパーツおよびリレーションシップで構成されます。デジタル署名は、発行元を識別し、Package に含まれている署名付きのパーツおよびリレーションシップが変更されていないことを確認します。
パッケージはデジタル著作権管理 (DRM) もサポートします。これを使用すると、承認済みユーザーに付与されている特定のアクセス権を使用して、Package のコンテンツ要素を暗号化することができます。
Package アーキテクチャに基づく XpsDocument は、オープンな XML Paper Specification (XPS) に基づいてドキュメントを格納するために設計されたパッケージ タイプです。
Microsoft .NET Framework Version 3.0 は、既定では標準の ZIP ファイルを利用し、パッケージを作成することによって、ページやドキュメントのコンテンツ、リソース、およびリレーションシップを格納します。すべての ZIP ファイルと同様に、アプリケーションでは System.IO.Packaging クラスを使用して、任意の種類または数のデータ ファイルを、効率的にアクセスできる単一のコンテナに格納できます。また、オプションでコンテナの内容を保護することもできます。
詳細については、『Open Packaging Conventions (OPC)』仕様を参照してください。このドキュメントは、http://go.microsoft.com/fwlink/?LinkID=71255 からダウンロードできます。
System.IO.Packaging に関連するプログラムの例の一覧については、以下のトピックを参照してください。