<?xml version="1.0" encoding="utf-8"?>
<doc>
  <assembly>
    <name>System.IO.Compression.ZipFile</name>
  </assembly>
  <members>
    <member name="T:System.IO.Compression.ZipFile">
      <summary>Provides static methods for creating, extracting, and opening zip archives.</summary>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectory(System.String,System.IO.Stream,System.IO.Compression.CompressionLevel,System.Boolean,System.Text.Encoding)">
      <summary>Creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level and character encoding for entry names and comments, and optionally includes the base directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destination">The stream where the zip archive is to be stored.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to include the directory name from <paramref name="sourceDirectoryName" /> at the root of the archive; <see langword="false" /> to include only the contents of the directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

The <paramref name="destination" /> stream does not support writing.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destination" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">A file in the specified directory could not be opened.

-or-

An I/O error occurred while opening a file to be archived.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="compressionLevel" /> is not a valid <see cref="T:System.IO.Compression.CompressionLevel" /> value.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectory(System.String,System.IO.Stream,System.IO.Compression.CompressionLevel,System.Boolean)">
      <summary>Creates a zip archive in the specified stream that contains the files and directories from the specified directory, uses the specified compression level, and optionally includes the base directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destination">The stream where the zip archive is to be stored.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to include the directory name from <paramref name="sourceDirectoryName" /> at the root of the archive; <see langword="false" /> to include only the contents of the directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

The <paramref name="destination" /> stream does not support writing.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destination" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">A file in the specified directory could not be opened.

-or-

An I/O error occurred while opening a file to be archived.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="compressionLevel" /> is not a valid <see cref="T:System.IO.Compression.CompressionLevel" /> value.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectory(System.String,System.IO.Stream)">
      <summary>Creates a zip archive in the specified stream that contains the files and directories from the specified directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destination">The stream where the zip archive is to be stored.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

The <paramref name="destination" /> stream does not support writing.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destination" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">A file in the specified directory could not be opened.

-or-

An I/O error occurred while opening a file to be archived.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> contains an invalid format.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectory(System.String,System.String,System.IO.Compression.CompressionLevel,System.Boolean,System.Text.Encoding)">
      <summary>Creates a zip archive that contains the files and directories from the specified directory, uses the specified compression level and character encoding for entry names and comments, and optionally includes the base directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destinationArchiveFileName">The path of the archive to be created, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to include the directory name from <paramref name="sourceDirectoryName" /> at the root of the archive; <see langword="false" /> to include only the contents of the directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 <paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="destinationArchiveFileName" /> already exists.

 -or-

 A file in the specified directory could not be opened.

-or-

An I/O error occurred while opening a file to be archived.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="destinationArchiveFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the directory specified in <paramref name="sourceDirectoryName" /> or the file specified in <paramref name="destinationArchiveFileName" />.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> contains an invalid format.

 -or-

 The zip archive does not support writing.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectory(System.String,System.String,System.IO.Compression.CompressionLevel,System.Boolean)">
      <summary>Creates a zip archive that contains the files and directories from the specified directory, uses the specified compression level, and optionally includes the base directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destinationArchiveFileName">The path of the archive to be created, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to include the directory name from <paramref name="sourceDirectoryName" /> at the root of the archive; <see langword="false" /> to include only the contents of the directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="destinationArchiveFileName" /> already exists.

 -or-

 A file in the specified directory could not be opened.

-or-

An I/O error occurred while opening a file to be archived.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="destinationArchiveFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the directory specified in <paramref name="sourceDirectoryName" /> or the file specified in <paramref name="destinationArchiveFileName" />.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> contains an invalid format.

 -or-

 The zip archive does not support writing.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectory(System.String,System.String)">
      <summary>Creates a zip archive that contains the files and directories from the specified directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destinationArchiveFileName">The path of the archive to be created, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="destinationArchiveFileName" /> already exists.

 -or-

 A file in the specified directory could not be opened.

-or-

An I/O error occurred while opening a file to be archived.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="destinationArchiveFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the directory specified in <paramref name="sourceDirectoryName" /> or the file specified in <paramref name="destinationArchiveFileName" />.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> contains an invalid format.

 -or-

 The zip archive does not support writing.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectoryAsync(System.String,System.IO.Stream,System.IO.Compression.CompressionLevel,System.Boolean,System.Text.Encoding,System.Threading.CancellationToken)">
      <summary>Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, using the specified compression level and character encoding for entry names, and optionally including the base directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destination">The stream where the zip archive is to be stored.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to include the directory name from <paramref name="sourceDirectoryName" /> at the root of the archive; <see langword="false" /> to include only the contents of the directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>The <paramref name="destination" /> stream does not support writing.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destination" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>A file in the specified directory could not be opened.</para>
        <para>-or-</para>
        <para>An I/O error occurred while opening a file to be archived.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="compressionLevel" /> is not a valid <see cref="T:System.IO.Compression.CompressionLevel" /> value.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectoryAsync(System.String,System.IO.Stream,System.IO.Compression.CompressionLevel,System.Boolean,System.Threading.CancellationToken)">
      <summary>Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory, using the specified compression level, and optionally including the base directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destination">The stream where the zip archive is to be stored.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to include the directory name from <paramref name="sourceDirectoryName" /> at the root of the archive; <see langword="false" /> to include only the contents of the directory.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>The <paramref name="destination" /> stream does not support writing.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destination" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>A file in the specified directory could not be opened.</para>
        <para>-or-</para>
        <para>An I/O error occurred while opening a file to be archived.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="compressionLevel" /> is not a valid <see cref="T:System.IO.Compression.CompressionLevel" /> value.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectoryAsync(System.String,System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously creates a zip archive in the specified stream that contains the files and directories from the specified directory.</summary>
      <param name="sourceDirectoryName">The path to the directory to be archived, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="destination">The stream where the zip archive is to be stored.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>The <paramref name="destination" /> stream does not support writing.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destination" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceDirectoryName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceDirectoryName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>A file in the specified directory could not be opened.</para>
        <para>-or-</para>
        <para>An I/O error occurred while opening a file to be archived.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectoryAsync(System.String,System.String,System.IO.Compression.CompressionLevel,System.Boolean,System.Text.Encoding,System.Threading.CancellationToken)">
      <summary>
          Asynchronously creates a zip archive at the path <paramref name="destinationArchiveFileName" /> that contains the files and directories in the directory specified by <paramref name="sourceDirectoryName" />.</summary>
      <param name="sourceDirectoryName">The path to the directory on the file system to be archived.</param>
      <param name="destinationArchiveFileName">The name of the archive to be created.</param>
      <param name="compressionLevel">One of the enumeration values that specifies the level of the compression (speed/memory vs. compressed size trade-off).</param>
      <param name="includeBaseDirectory">
        <para>
          <see langword="true" /> to indicate that a directory named <paramref name="sourceDirectoryName" /> should be included at the root of the archive. <see langword="false" /> to indicate that the files and directories in <paramref name="sourceDirectoryName" /> should be included directly in the archive.</para>
      </param>
      <param name="entryNameEncoding">
          The encoding to use when reading or writing entry names and comments in this ZipArchive.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by <code>InvalidPathChars</code>.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>In <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</para>
        <para>For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified in <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is invalid, (for example, it is on an unmapped drive).</para>
        <para>-or-</para>
        <para>The directory specified by <paramref name="sourceDirectoryName" /> does not exist.</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>
          <paramref name="destinationArchiveFileName" /> already exists.</para>
        <para>-or-</para>
        <para>An I/O error occurred while opening a file to be archived.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="destinationArchiveFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <para>
          <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is in an invalid format.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectoryAsync(System.String,System.String,System.IO.Compression.CompressionLevel,System.Boolean,System.Threading.CancellationToken)">
      <summary>
          Asynchronously creates a zip archive at the path <paramref name="destinationArchiveFileName" /> that contains the files and directories in the directory specified by <paramref name="sourceDirectoryName" />.</summary>
      <param name="sourceDirectoryName">The path to the directory on the file system to be archived.</param>
      <param name="destinationArchiveFileName">The name of the archive to be created.</param>
      <param name="compressionLevel">One of the enumeration values that specifies the level of the compression (speed/memory vs. compressed size trade-off).</param>
      <param name="includeBaseDirectory">
        <see langword="true" /> to indicate that a directory named <paramref name="sourceDirectoryName" /> should be included at the root of the archive. <see langword="false" /> to indicate that the files and directories in <paramref name="sourceDirectoryName" /> should be included directly in the archive.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by <code>InvalidPathChars</code>.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>In <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</para>
        <para>For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified in <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is invalid, (for example, it is on an unmapped drive).</para>
        <para>-or-</para>
        <para>The directory specified by <paramref name="sourceDirectoryName" /> does not exist.</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>
          <paramref name="destinationArchiveFileName" /> already exists.</para>
        <para>-or-</para>
        <para>An I/O error occurred while opening a file to be archived.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="destinationArchiveFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <para>
          <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is in an invalid format.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.CreateFromDirectoryAsync(System.String,System.String,System.Threading.CancellationToken)">
      <summary>
          Asynchronously creates a zip archive at the path <paramref name="destinationArchiveFileName" /> that contains the files and directories from the directory specified by <paramref name="sourceDirectoryName" />.</summary>
      <param name="sourceDirectoryName">The path to the directory on the file system to be archived.</param>
      <param name="destinationArchiveFileName">The name of the archive to be created.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by <code>InvalidPathChars</code>.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>In <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</para>
        <para>For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified in <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is invalid, (for example, it is on an unmapped drive).</para>
        <para>-or-</para>
        <para>The directory specified by <paramref name="sourceDirectoryName" /> does not exist.</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>
          <paramref name="destinationArchiveFileName" /> already exists.</para>
        <para>-or-</para>
        <para>An I/O error occurred while opening a file to be archived.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="destinationArchiveFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <para>
          <paramref name="sourceDirectoryName" /> or <paramref name="destinationArchiveFileName" /> is in an invalid format.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.IO.Stream,System.String,System.Boolean)">
      <summary>Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, and optionally allows choosing if the files in the destination directory should be overwritten.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

-or-

<paramref name="overwriteFiles" /> is <see langword="false" /> and an archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive contained in the <paramref name="source" /> stream is not a valid zip archive.

-or-

An archive entry was not found or was corrupt.

-or-

An archive entry was compressed by using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.IO.Stream,System.String,System.Text.Encoding,System.Boolean)">
      <summary>Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, uses the specified character encoding for entry names and comments, and optionally allows choosing if the files in the destination directory should be overwritten.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

<paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

-or-

<paramref name="overwriteFiles" /> is <see langword="false" /> and an archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive contained in the <paramref name="source" /> stream is not a valid zip archive.

-or-

An archive entry was not found or was corrupt.

-or-

An archive entry was compressed by using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.IO.Stream,System.String,System.Text.Encoding)">
      <summary>Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system and uses the specified character encoding for entry names and comments.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

<paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

-or-

An archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive contained in the <paramref name="source" /> stream is not a valid zip archive.

-or-

An archive entry was not found or was corrupt.

-or-

An archive entry was compressed by using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.IO.Stream,System.String)">
      <summary>Extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

-or-

Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

-or-

An archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive contained in the <paramref name="source" /> stream is not a valid zip archive.

-or-

An archive entry was not found or was corrupt.

-or-

An archive entry was compressed by using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.String,System.String,System.Boolean)">
      <summary>Extracts all of the files in the specified archive to a directory on the file system.</summary>
      <param name="sourceArchiveFileName">The path on the file system to the archive that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the destination directory on the file system.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> specifies a path, a file name, or both that exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The path specified by <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="overwriteFiles" /> is <see langword="false" /> and <paramref name="destinationDirectoryName" /> already contains a file with the same name as a file that's being extracted.

-or-

An I/O error has occurred.

-or-

The name of a <see cref="T:System.IO.Compression.ZipArchiveEntry" /> is zero-length, contains only whitespace, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.

-or-

Extracting a <see cref="T:System.IO.Compression.ZipArchiveEntry" /> would result in a file destination that is outside the destination directory (for example, because of parent directory accessors).

-or-

A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> has the same name as an entry from the same archive that's already been extracted.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid <see cref="T:System.IO.Compression.ZipArchive" />.

-or-

A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> was not found or was corrupt.

-or-

A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> has been compressed using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.String,System.String,System.Text.Encoding,System.Boolean)">
      <summary>Extracts all of the files in the specified archive to a directory on the file system.</summary>
      <param name="sourceArchiveFileName">The path on the file system to the archive that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the destination directory on the file system.</param>
      <param name="entryNameEncoding">The encoding to use when reading entry names and comments in this <see cref="T:System.IO.Compression.ZipArchive" />.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.

 -or-

 <paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> specifies a path, a file name, or both that exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The path specified by <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="overwriteFiles" /> is <see langword="false" /> and an archive entry to extract has the same name as a file that already exists in <paramref name="destinationDirectoryName" />.

-or-

An I/O error has occurred.

-or-

The name of a <see cref="T:System.IO.Compression.ZipArchiveEntry" /> is zero-length, contains only whitespace, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.

-or-

Extracting a <see cref="T:System.IO.Compression.ZipArchiveEntry" /> would result in a file destination that is outside the destination directory (for example, because of parent directory accessors).

-or-

A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> has the same name as an already extracted entry from the same archive.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid <see cref="T:System.IO.Compression.ZipArchive" />.

-or-

An archive entry was not found or was corrupt.

-or-

An archive entry has been compressed using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.String,System.String,System.Text.Encoding)">
      <summary>Extracts all the files in the specified zip archive to a directory on the file system and uses the specified character encoding for entry names and comments.</summary>
      <param name="sourceArchiveFileName">The path to the archive that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 <paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

 -or-

 An archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid zip archive.

 -or-

 An archive entry was not found or was corrupt.

 -or-

 An archive entry was compressed by using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectory(System.String,System.String)">
      <summary>Extracts all the files in the specified zip archive to a directory on the file system.</summary>
      <param name="sourceArchiveFileName">The path to the archive that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

 -or-

 An archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> or <paramref name="sourceArchiveFileName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid zip archive.

 -or-

 An archive entry was not found or was corrupt.

 -or-

 An archive entry was compressed by using a compression method that isn't supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.IO.Stream,System.String,System.Boolean,System.Threading.CancellationToken)">
      <summary>Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, and optionally allows choosing if the files in the destination directory should be overwritten.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)</para>
        <para>-or-</para>
        <para>
          <paramref name="overwriteFiles" /> is <see langword="false" /> and an archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive contained in the <paramref name="source" /> stream is not a valid zip archive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry was compressed by using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.IO.Stream,System.String,System.Text.Encoding,System.Boolean,System.Threading.CancellationToken)">
      <summary>Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system, uses the specified character encoding for entry names, and optionally allows choosing if the files in the destination directory should be overwritten.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>
          <paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)</para>
        <para>-or-</para>
        <para>
          <paramref name="overwriteFiles" /> is <see langword="false" /> and an archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive contained in the <paramref name="source" /> stream is not a valid zip archive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry was compressed by using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.IO.Stream,System.String,System.Text.Encoding,System.Threading.CancellationToken)">
      <summary>Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system and uses the specified character encoding for entry names.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>
          <paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)</para>
        <para>-or-</para>
        <para>An archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive contained in the <paramref name="source" /> stream is not a valid zip archive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry was compressed by using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.IO.Stream,System.String,System.Threading.CancellationToken)">
      <summary>Asynchronously extracts all the files from the zip archive stored in the specified stream and places them in the specified destination directory on the file system.</summary>
      <param name="source">The stream from which the zip archive is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path in <paramref name="destinationDirectoryName" /> exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)</para>
        <para>-or-</para>
        <para>An archive entry to extract has the same name as an entry that has already been extracted or that exists in <paramref name="destinationDirectoryName" />.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to access the archive or the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive contained in the <paramref name="source" /> stream is not a valid zip archive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry was compressed by using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.String,System.String,System.Boolean,System.Threading.CancellationToken)">
      <summary>
          Asynchronously extracts all of the files in the specified archive to a directory on the file system.</summary>
      <param name="sourceArchiveFileName">The path to the archive on the file system that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified by <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is invalid, (for example, it is on an unmapped drive).</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>An I/O error has occurred.</para>
        <para>-or-</para>
        <para>An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors).</para>
        <para>-or-</para>
        <para>An archive entry has the same name as an already extracted entry from the same archive.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>
          <paramref name="sourceArchiveFileName" /> not a valid ZipArchive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry has been compressed using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.String,System.String,System.Text.Encoding,System.Boolean,System.Threading.CancellationToken)">
      <summary>
        <para>Asynchronously extracts all of the files in the specified archive to a directory on the file system.</para>
        <para>The specified directory must not exist. This method will create all subdirectories and the specified directory.</para>
        <para>If there is an error while extracting the archive, the archive will remain partially extracted. Each entry will be extracted such that the extracted file has the same relative path to the destinationDirectoryName as the entry has to the archive. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory. If a file to be archived has an invalid last modified time, the first datetime representable in the zip timestamp format (midnight on January 1, 1980) will be used.</para>
      </summary>
      <param name="sourceArchiveFileName">The path to the archive on the file system that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this ZipArchive.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>
          <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified by <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is invalid, (for example, it is on an unmapped drive).</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>An I/O error has occurred.</para>
        <para>-or-</para>
        <para>An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors).</para>
        <para>-or-</para>
        <para>An archive entry has the same name as an already extracted entry from the same archive.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid ZipArchive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry has been compressed using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.String,System.String,System.Text.Encoding,System.Threading.CancellationToken)">
      <summary>
          Asynchronously extracts all of the files in the specified archive to a directory on the file system.</summary>
      <param name="sourceArchiveFileName">The path to the archive on the file system that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory on the file system. The directory specified must not exist, but the directory that it is contained in must exist.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this ZipArchive.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
          The path specified by <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>An I/O error has occurred.</para>
        <para>-or-</para>
        <para>An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors).</para>
        <para>-or-</para>
        <para>An archive entry has the same name as an already extracted entry from the same archive.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid ZipArchive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry has been compressed using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.ExtractToDirectoryAsync(System.String,System.String,System.Threading.CancellationToken)">
      <summary>
          Asynchronously extracts all of the files in the specified archive to a directory on the file system.</summary>
      <param name="sourceArchiveFileName">The path to the archive on the file system that is to be extracted.</param>
      <param name="destinationDirectoryName">The path to the directory in which to place the extracted files, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> specifies a path, file name, or both that exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified by <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is invalid, (for example, it is on an unmapped drive).</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>An I/O error has occurred.</para>
        <para>-or-</para>
        <para>An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would result in a file destination that is outside the destination directory (for example, because of parent directory accessors).</para>
        <para>-or-</para>
        <para>An archive entry has the same name as an already extracted entry from the same archive.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceArchiveFileName" /> or <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="sourceArchiveFileName" /> was not found.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The archive specified by <paramref name="sourceArchiveFileName" /> is not a valid ZipArchive.</para>
        <para>-or-</para>
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry has been compressed using a compression method that isn't supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.Open(System.String,System.IO.Compression.ZipArchiveMode,System.Text.Encoding)">
      <summary>Opens a zip archive at the specified path, in the specified mode, and by using the specified character encoding for entry names and comments.</summary>
      <param name="archiveFileName">The path to the archive to open, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="mode">One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this archive. Specify a value for this parameter only when an encoding is required for interoperability with zip archive tools and libraries that do not support UTF-8 encoding for entry names or comments.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="archiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 <paramref name="entryNameEncoding" /> is set to a Unicode encoding other than UTF-8.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="archiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="archiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="archiveFileName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="archiveFileName" /> could not be opened.

 -or-

 <paramref name="mode" /> is set to <see cref="F:System.IO.Compression.ZipArchiveMode.Create" />, but the file specified in <paramref name="archiveFileName" /> already exists.

-or-

An unspecified I/O error occurred while opening the file.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="archiveFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the file specified in <paramref name="archiveFileName" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="mode" /> specifies an invalid value.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="mode" /> is set to <see cref="F:System.IO.Compression.ZipArchiveMode.Read" />, but the file specified in <paramref name="archiveFileName" /> is not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="archiveFileName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <paramref name="archiveFileName" /> could not be interpreted as a zip archive.

 -or-

 <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" />, but an entry is missing or corrupt and cannot be read.

 -or-

 <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" />, but an entry is too large to fit into memory.</exception>
      <returns>The opened zip archive.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFile.Open(System.String,System.IO.Compression.ZipArchiveMode)">
      <summary>Opens a zip archive at the specified path and in the specified mode.</summary>
      <param name="archiveFileName">The path to the archive to open, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="mode">One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="archiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="archiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="archiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="archiveFileName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="archiveFileName" /> could not be opened.

 -or-

 <paramref name="mode" /> is set to <see cref="F:System.IO.Compression.ZipArchiveMode.Create" />, but the file specified in <paramref name="archiveFileName" /> already exists.

-or-

An unspecified I/O error occurred while opening the file.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="archiveFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the file specified in <paramref name="archiveFileName" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="mode" /> specifies an invalid value.</exception>
      <exception cref="T:System.IO.FileNotFoundException">
        <paramref name="mode" /> is set to <see cref="F:System.IO.Compression.ZipArchiveMode.Read" />, but the file specified in <paramref name="archiveFileName" /> is not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="archiveFileName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <paramref name="archiveFileName" /> could not be interpreted as a zip archive.

 -or-

 <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" />, but an entry is missing or corrupt and cannot be read.

 -or-

 <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" />, but an entry is too large to fit into memory.</exception>
      <returns>The opened zip archive.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFile.OpenAsync(System.String,System.IO.Compression.ZipArchiveMode,System.Text.Encoding,System.Threading.CancellationToken)">
      <summary>Asynchronously opens a <code>ZipArchive</code> on the specified <paramref name="archiveFileName" /> in the specified <code>ZipArchiveMode</code> mode.</summary>
      <param name="archiveFileName">The path on the filesystem to open the archive on.</param>
      <param name="mode">One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive.</param>
      <param name="entryNameEncoding">The encoding to use when reading or writing entry names and comments in this ZipArchive.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="archiveFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="archiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="archiveFileName" /> exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="archiveFileName" /> is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">An unspecified I/O error occurred while opening the file.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="archiveFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="mode" /> specified an invalid value.</exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified in <paramref name="archiveFileName" /> was not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="archiveFileName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The specified file could not be interpreted as a zip file.</para>
        <para>-or-</para>
        <para>
          <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" /> and an entry is missing from the archive or is corrupt and cannot be read.</para>
        <para>-or-</para>
        <para>
          <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" /> and an entry is too large to fit into memory.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.OpenAsync(System.String,System.IO.Compression.ZipArchiveMode,System.Threading.CancellationToken)">
      <summary>Asynchronously opens a <code>ZipArchive</code> on the specified <paramref name="archiveFileName" /> in the specified <code>ZipArchiveMode</code> mode.</summary>
      <param name="archiveFileName">The path on the filesystem to open the archive on.</param>
      <param name="mode">One of the enumeration values that specifies the actions that are allowed on the entries in the opened archive.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="archiveFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="archiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <paramref name="archiveFileName" /> exceeds the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified <paramref name="archiveFileName" /> is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">An unspecified I/O error occurred while opening the file.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="archiveFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="mode" /> specified an invalid value.</exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified in <paramref name="archiveFileName" /> was not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="archiveFileName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The specified file could not be interpreted as a zip file.</para>
        <para>-or-</para>
        <para>
          <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" /> and an entry is missing from the archive or is corrupt and cannot be read.</para>
        <para>-or-</para>
        <para>
          <paramref name="mode" /> is <see cref="F:System.IO.Compression.ZipArchiveMode.Update" /> and an entry is too large to fit into memory.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFile.OpenRead(System.String)">
      <summary>Opens a zip archive for reading at the specified path.</summary>
      <param name="archiveFileName">The path to the archive to open, specified as a relative or absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="archiveFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="archiveFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="archiveFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="archiveFileName" /> is invalid or does not exist (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="archiveFileName" /> could not be opened.

-or-

An unspecified I/O error occurred while opening the file.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="archiveFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the file specified in <paramref name="archiveFileName" />.</exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified in <paramref name="archiveFileName" /> is not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="archiveFileName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <paramref name="archiveFileName" /> could not be interpreted as a zip archive.</exception>
      <returns>The opened zip archive.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFile.OpenReadAsync(System.String,System.Threading.CancellationToken)">
      <summary>Asynchronously opens a <code>ZipArchive</code> on the specified path for reading. The specified file is opened with <code>FileMode.Open</code>.</summary>
      <param name="archiveFileName">
        <para>A string specifying the path on the filesystem to open the archive on. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory.</para>
      </param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="archiveFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">archiveFileName is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>The specified archiveFileName exceeds the system-defined maximum length.</para>
        <para>For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified archiveFileName is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">An unspecified I/O error occurred while opening the file.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="archiveFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified in archiveFileName was not found.</exception>
      <exception cref="T:System.NotSupportedException">archiveFileName is in an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">The specified file could not be interpreted as a zip file.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="T:System.IO.Compression.ZipFileExtensions">
      <summary>Provides extension methods for the <see cref="T:System.IO.Compression.ZipArchive" /> and <see cref="T:System.IO.Compression.ZipArchiveEntry" /> classes.</summary>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.CreateEntryFromFile(System.IO.Compression.ZipArchive,System.String,System.String,System.IO.Compression.CompressionLevel)">
      <summary>Archives a file by compressing it using the specified compression level and adding it to the zip archive.</summary>
      <param name="destination">The zip archive to add the file to.</param>
      <param name="sourceFileName">The path to the file to be archived. You can specify either a relative or an absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryName">The name of the entry to create in the zip archive.</param>
      <param name="compressionLevel">One of the enumeration values that indicates whether to emphasize speed or compression effectiveness when creating the entry.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 <paramref name="entryName" /> is <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceFileName" /> or <paramref name="entryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceFileName" /> is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.IOException">The file specified by <paramref name="sourceFileName" /> cannot be opened, or is too large to be updated (current limit is <see cref="F:System.Int32.MaxValue">Int32.MaxValue</see>.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="sourceFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the file specified by <paramref name="sourceFileName" />.</exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified by <paramref name="sourceFileName" /> is not found.</exception>
      <exception cref="T:System.NotSupportedException">The <paramref name="sourceFileName" /> parameter is in an invalid format.

 -or-

 The zip archive does not support writing.</exception>
      <exception cref="T:System.ObjectDisposedException">The zip archive has been disposed.</exception>
      <returns>A wrapper for the new entry in the zip archive.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.CreateEntryFromFile(System.IO.Compression.ZipArchive,System.String,System.String)">
      <summary>Archives a file by compressing it and adding it to the zip archive.</summary>
      <param name="destination">The zip archive to add the file to.</param>
      <param name="sourceFileName">The path to the file to be archived. You can specify either a relative or an absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="entryName">The name of the entry to create in the zip archive.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="sourceFileName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 <paramref name="entryName" /> is <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceFileName" /> or <paramref name="entryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">In <paramref name="sourceFileName" />, the specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <paramref name="sourceFileName" /> is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The file specified by <paramref name="sourceFileName" /> cannot be opened, or is too large to be updated (current limit is <see cref="F:System.Int32.MaxValue">Int32.MaxValue</see>.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <paramref name="sourceFileName" /> specifies a directory.

 -or-

 The caller does not have the required permission to access the file specified by <paramref name="sourceFileName" />.</exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified by <paramref name="sourceFileName" /> is not found.</exception>
      <exception cref="T:System.NotSupportedException">The <paramref name="sourceFileName" /> parameter is in an invalid format.

 -or-

 The zip archive does not support writing.</exception>
      <exception cref="T:System.ObjectDisposedException">The zip archive has been disposed.</exception>
      <returns>A wrapper for the new entry in the zip archive.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.CreateEntryFromFileAsync(System.IO.Compression.ZipArchive,System.String,System.String,System.IO.Compression.CompressionLevel,System.Threading.CancellationToken)">
      <summary>Asynchronously adds a file from the file system to the archive under the specified entry name.</summary>
      <param name="destination">The zip archive to add the file to.</param>
      <param name="sourceFileName">
        <para>The path to the file on the file system to be copied from. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory.</para>
      </param>
      <param name="entryName">The name of the entry to be created.</param>
      <param name="compressionLevel">The level of the compression (speed/memory vs. compressed size trade-off).</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>
          <paramref name="entryName" /> is a zero-length string.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceFileName" /> or <paramref name="entryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>In <paramref name="sourceFileName" />, the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified <paramref name="sourceFileName" /> is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">An I/O error occurred while opening the file specified by <paramref name="sourceFileName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="sourceFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified in <paramref name="sourceFileName" /> was not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceFileName" /> is in an invalid format or the ZipArchive does not support writing.</exception>
      <exception cref="T:System.ObjectDisposedException">The ZipArchive has already been closed.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
      <returns>A wrapper for the newly created entry.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.CreateEntryFromFileAsync(System.IO.Compression.ZipArchive,System.String,System.String,System.Threading.CancellationToken)">
      <summary> Asynchronously adds a file from the file system to the archive under the specified entry name.</summary>
      <param name="destination">The zip archive to add the file to.</param>
      <param name="sourceFileName">
        <para>The path to the file on the file system to be copied from. The path is permitted to specify relative or absolute path information. Relative path information is interpreted as relative to the current working directory.</para>
      </param>
      <param name="entryName">The name of the entry to be created.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="sourceFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>
          <paramref name="entryName" /> is a zero-length string.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="sourceFileName" /> or <paramref name="entryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>In <paramref name="sourceFileName" />, the specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified <paramref name="sourceFileName" /> is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">An I/O error occurred while opening the file specified by <paramref name="sourceFileName" />.</exception>
      <exception cref="T:System.UnauthorizedAccessException">
        <para>
          <paramref name="sourceFileName" /> specified a directory.</para>
        <para>-or-</para>
        <para>The caller does not have the required permission.</para>
      </exception>
      <exception cref="T:System.IO.FileNotFoundException">The file specified in <paramref name="sourceFileName" /> was not found.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="sourceFileName" /> is in an invalid format or the ZipArchive does not support writing.</exception>
      <exception cref="T:System.ObjectDisposedException">The ZipArchive has already been closed.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
      <returns>A wrapper for the newly created entry.</returns>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToDirectory(System.IO.Compression.ZipArchive,System.String,System.Boolean)">
      <summary>Extracts all of the files in the archive to a directory on the file system.</summary>
      <param name="source">The <see cref="T:System.IO.Compression.ZipArchive" /> to extract.</param>
      <param name="destinationDirectoryName">The path to the destination directory on the file system. The path can be relative or absolute. A relative path is interpreted as relative to the current working directory.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite existing files; <see langword="false" /> otherwise.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace,
            or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of a <see cref="T:System.IO.Compression.ZipArchiveEntry" /> is zero-length, contains only whitespace, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.

-or-

Extracting a <see cref="T:System.IO.Compression.ZipArchiveEntry" /> would have resulted in a destination file that is outside <paramref name="destinationDirectoryName" /> (for example, if the entry name contains parent directory accessors).

-or-

A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> has the same name as an already extracted entry from the same archive.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> was not found or was corrupt.

-or-

A <see cref="T:System.IO.Compression.ZipArchiveEntry" /> has been compressed using a compression method that is not supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToDirectory(System.IO.Compression.ZipArchive,System.String)">
      <summary>Extracts all the files in the zip archive to a directory on the file system.</summary>
      <param name="source">The zip archive to extract files from.</param>
      <param name="destinationDirectoryName">The path to the directory to place the extracted files in. You can specify either a relative or an absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationDirectoryName" /> is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path exceeds the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">The name of an entry in the archive is <see cref="F:System.String.Empty" />, contains only white space, or contains at least one invalid character.

 -or-

 Extracting an entry from the archive would create a file that is outside the directory specified by <paramref name="destinationDirectoryName" />. (For example, this might happen if the entry name contains parent directory accessors.)

 -or-

 Two or more entries in the archive have the same name.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to write to the destination directory.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> contains an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">An archive entry cannot be found or is corrupt.

 -or-

 An archive entry was compressed by using a compression method that is not supported.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToDirectoryAsync(System.IO.Compression.ZipArchive,System.String,System.Boolean,System.Threading.CancellationToken)">
      <summary>Extracts all of the files in the archive to a directory on the file system. The specified directory may already exist.</summary>
      <param name="source">The zip archive to extract files from.</param>
      <param name="destinationDirectoryName">The path to the directory on the file system.</param>
      <param name="overwriteFiles">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>This method will create all subdirectories and the specified directory if necessary.</para>
        <para>If there is an error while extracting the archive, the archive will remain partially extracted.</para>
        <para>Each entry is extracted such that the extracted file has the same relative path to <paramref name="destinationDirectoryName" /> as the entry has to the root of the archive. If a file to be archived has an invalid last modified time, the first datetime representable in the Zip timestamp format (midnight on January 1, 1980) will be used.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>The specified path, file name, or both exceed the system-defined maximum length.</para>
        <para>For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would have resulted in a destination file that is outside <paramref name="destinationDirectoryName" /> (for example, if the entry name contains parent directory accessors).</para>
        <para>-or-</para>
        <para>An archive entry has the same name as an already extracted entry from the same archive.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>An archive entry was not found or was corrupt.</para>
        <para>-or-</para>
        <para>An archive entry has been compressed using a compression method that is not supported.</para>
      </exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToDirectoryAsync(System.IO.Compression.ZipArchive,System.String,System.Threading.CancellationToken)">
      <summary>
        <para>Asynchronously extracts all of the files in the archive to a directory on the file system. The specified directory can already exist.</para>
      </summary>
      <param name="source">The zip archive to extract files from.</param>
      <param name="destinationDirectoryName">The path to the directory on the file system.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="destinationDirectoryName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationDirectoryName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid, (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <para>An archive entry's name is zero-length, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>Extracting an archive entry would have resulted in a destination file that is outside <paramref name="destinationDirectoryName" /> (for example, if the entry name contains parent directory accessors).</para>
        <para>-or-</para>
        <para>An archive entry has the same name as an already extracted entry from the same archive.</para>
      </exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationDirectoryName" /> is in an invalid format.</exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>An archive entry was not found or is corrupt.</para>
        <para>-or-</para>
        <para>An archive entry has been compressed using a compression method that is not supported.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToFile(System.IO.Compression.ZipArchiveEntry,System.String,System.Boolean)">
      <summary>Extracts an entry in the zip archive to a file, and optionally overwrites an existing file that has the same name.</summary>
      <param name="source">The zip archive entry to extract a file from.</param>
      <param name="destinationFileName">The path of the file to create from the contents of the entry. You can specify either a relative or an absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <param name="overwrite">
        <see langword="true" /> to overwrite an existing file that has the same name as the destination file; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationFileName" /> is a zero-length string, contains only white space, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.

 -or-

 <paramref name="destinationFileName" /> specifies a directory.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="destinationFileName" /> already exists and <paramref name="overwrite" /> is <see langword="false" />.

 -or-

 An I/O error occurred.

 -or-

 The entry is currently open for writing.

 -or-

 The entry has been deleted from the archive.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to create the new file.</exception>
      <exception cref="T:System.IO.InvalidDataException">The entry is missing from the archive or is corrupt and cannot be read.

 -or-

 The entry has been compressed by using a compression method that is not supported.</exception>
      <exception cref="T:System.ObjectDisposedException">The zip archive that this entry belongs to has been disposed.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationFileName" /> is in an invalid format.

 -or-

 The zip archive for this entry was opened in <see cref="F:System.IO.Compression.ZipArchiveMode.Create" /> mode, which does not permit the retrieval of entries.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToFile(System.IO.Compression.ZipArchiveEntry,System.String)">
      <summary>Extracts an entry in the zip archive to a file.</summary>
      <param name="source">The zip archive entry to extract a file from.</param>
      <param name="destinationFileName">The path of the file to create from the contents of the entry. You can specify either a relative or an absolute path. A relative path is interpreted as relative to the current working directory.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destinationFileName" /> is a zero-length string, contains only white space, or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars" />.

 -or-

 <paramref name="destinationFileName" /> specifies a directory.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">The specified path, file name, or both exceed the system-defined maximum length.</exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">The specified path is invalid (for example, it is on an unmapped drive).</exception>
      <exception cref="T:System.IO.IOException">
        <paramref name="destinationFileName" /> already exists.

 -or-

 An I/O error occurred.

 -or-

 The entry is currently open for writing.

 -or-

 The entry has been deleted from the archive.</exception>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission to create the new file.</exception>
      <exception cref="T:System.IO.InvalidDataException">The entry is missing from the archive, or is corrupt and cannot be read.

 -or-

 The entry has been compressed by using a compression method that is not supported.</exception>
      <exception cref="T:System.ObjectDisposedException">The zip archive that this entry belongs to has been disposed.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="destinationFileName" /> is in an invalid format.

 -or-

 The zip archive for this entry was opened in <see cref="F:System.IO.Compression.ZipArchiveMode.Create" /> mode, which does not permit the retrieval of entries.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToFileAsync(System.IO.Compression.ZipArchiveEntry,System.String,System.Boolean,System.Threading.CancellationToken)">
      <summary>Asynchronously creates a file on the file system with the entry's contents and the specified name.</summary>
      <param name="source">The zip archive entry to extract a file from.</param>
      <param name="destinationFileName">
        <para>The name of the file that will hold the contents of the entry.</para>
      </param>
      <param name="overwrite">
        <see langword="true" /> to overwrite files; <see langword="false" /> otherwise.</param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="destinationFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>
          <paramref name="destinationFileName" /> specifies a directory.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified in <paramref name="destinationFileName" /> is invalid (for example, it is on an unmapped drive).</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>An I/O error has occurred.</para>
        <para>-or-</para>
        <para>The entry is currently open for writing.</para>
        <para>-or-</para>
        <para>The entry has been deleted from the archive.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <para>
          <paramref name="destinationFileName" /> is in an invalid format.</para>
        <para>-or-</para>
        <para>The ZipArchive that this entry belongs to was opened in a write-only mode.</para>
      </exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The entry is missing from the archive or is corrupt and cannot be read.</para>
        <para>-or-</para>
        <para>The entry has been compressed using a compression method that is not supported.</para>
      </exception>
      <exception cref="T:System.ObjectDisposedException">The ZipArchive that this entry belongs to has been disposed.</exception>
      <exception cref="T:System.OperationCanceledException">An asynchronous operation is cancelled.</exception>
    </member>
    <member name="M:System.IO.Compression.ZipFileExtensions.ExtractToFileAsync(System.IO.Compression.ZipArchiveEntry,System.String,System.Threading.CancellationToken)">
      <summary>Asynchronously creates a file on the file system with the entry's contents and the specified name.</summary>
      <param name="source">The zip archive entry to extract a file from.</param>
      <param name="destinationFileName">
        <para>The name of the file that will hold the contents of the entry.</para>
      </param>
      <param name="cancellationToken">The cancellation token to monitor for cancellation requests.</param>
      <exception cref="T:System.UnauthorizedAccessException">The caller does not have the required permission.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="destinationFileName" /> is a zero-length string, contains only whitespace, or contains one or more invalid characters as defined by InvalidPathChars.</para>
        <para>-or-</para>
        <para>
          <paramref name="destinationFileName" /> specifies a directory.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="destinationFileName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.IO.PathTooLongException">
        <para>The specified path, file name, or both exceed the system-defined maximum length. For example, on Windows-based platforms, paths must be less than 248 characters, and file names must be less than 260 characters.</para>
      </exception>
      <exception cref="T:System.IO.DirectoryNotFoundException">
        <para>The path specified in <paramref name="destinationFileName" /> is invalid (for example, it is on an unmapped drive).</para>
      </exception>
      <exception cref="T:System.IO.IOException">
        <para>An I/O error has occurred.</para>
        <para>-or-</para>
        <para>The entry is currently open for writing.</para>
        <para>-or-</para>
        <para>The entry has been deleted from the archive.</para>
      </exception>
      <exception cref="T:System.NotSupportedException">
        <para>
          <paramref name="destinationFileName" /> is in an invalid format.</para>
        <para>-or-</para>
        <para>The ZipArchive that this entry belongs to was opened in a write-only mode.</para>
      </exception>
      <exception cref="T:System.IO.InvalidDataException">
        <para>The entry is missing from the archive or is corrupt and cannot be read.</para>
        <para>-or-</para>
        <para>The entry has been compressed using a compression method that is not supported.</para>
      </exception>
      <exception cref="T:System.ObjectDisposedException">The ZipArchive that this entry belongs to has been disposed.</exception>
    </member>
  </members>
</doc>