Provides classes that support storage of multiple data objects in a single container.
Represents an OLE compound file that contains an encrypted package.
Represents a container that can store multiple data objects.
Represents a digital signature that is applied to a set of package parts and relationships.
Provides a utility class for the creation and verification of digital signatures in a Package.
Provides a base class for parts stored in a Package. This class is abstract.
Represents a collection of PackagePart objects.
Represents the core properties of a Package.
Defines PackageRelationship criteria to select part-level or package-level relationships.
Provides utility methods to compose and parse pack URI objects.
Represents the class that is invoked when an instance of a pack URI PackWebRequest is created.
Represents a response of a PackWebRequest.
Represents Digital Rights Management (DRM) information that is stored in an EncryptedPackageEnvelope.
Specifies the event args provided to the InvalidSignatureEventHandler.
Provides access and information for manipulating data stores in a Package.
Provides access and information for manipulating I/O streams within a Package.
Represents a part that is stored in a ZipPackage.
Specifies the location where the X.509 certificate that is used in signing is stored.
Specifies the compression level for content that is stored in a PackagePart.
Specifies the encryption option for parts in a Package.
Specifies the result of a certificate or signature verification.
Package is an abstract class that can be used to organize objects into a single entity of a defined physical format for portability and efficient access.
Like a file system, items contained in a Package are referenced in a hierarchical organization of folders and files.
A PackageRelationship ("relationship") defines an association between a source Package or PackagePart and a target object. A PackageRelationship can be one of two types, each of which can be one of two forms:
Package-level relationship (created by Package.CreateRelationship)
Part-level relationship (created by PackagePart.CreateRelationship)
The relationship's source Package or source PackagePart is considered the "owner" of the relationship. When the source object is deleted, all the relationships owned by the source object are also deleted. The process of creating or deleting a relationship does not physically change either the source or target objects in any way.
A PackageDigitalSignature ("digital signature") is a composition of parts and relationships representing a digital signature included with a Package. The digital signature identifies the originator and validates that the signed parts and relationships contained in the Package have not been modified.
Packages also support Digital Rights Management (DRM), which allows content elements in a Package to be encrypted with specific access rights granted to authorized users.
Windows Presentation Foundation uses packages to store content, resources, and relationships for pages and documents using a standard ZIP file by default. As with any ZIP file, your application can use the System.IO.Packaging classes to store and optionally protect any type or number of data files in a single efficient-to-access container.
For more information, see the Open Packaging Conventions (OPC) specification, available for download at the XPS section of Windows Hardware Developer Central.
We'd love to hear your thoughts. Choose the type you'd like to provide:
Our feedback system is built on GitHub Issues. Read more on our blog.