在"System.IO.Compression"命名空间中找不到`ZipArchive`

JP *_*ons 17 c# assemblies reference .net-4.5

我的问题与我在"System.IO.Compression"命名空间中找不到"ZipFile"类有关

在此输入图像描述

但我已经为我的4.5.1 webforms项目引用了DLL:

在此输入图像描述

我项目的属性给了我:Target framework: .Net Framework 4.5.1. 和web.config:

<compilation debug="true" targetFramework="4.5" />
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

解决方案是手动引用web.config中的程序集但为什么呢?为什么添加引用对话框中的复选框不足?

<assemblies>
    <add assembly="System.IO.Compression, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
    <add assembly="System.IO.Compression.FileSystem, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089" />
</assemblies>
Run Code Online (Sandbox Code Playgroud)

/sf/answers/1406996531/

小智 16

我遇到了同样的问题,因为引用中没有名称空间,请执行以下步骤.

在我没有参考的情况下

未安装引用时

安装引用后

在此输入图像描述

1)在这里安装system.Io.compression来自nuget

System.IO.Compression

2)在这里安装system.Install-Package 40-System.IO.Compression.FileSystem.

System.IO.Compression.FileSystem


sae*_*hem 12

您可以直接更新项目文件中的引用(卸载项目并编辑此项或使用记事本打开.csproj文件并编辑)

编辑必须与:

<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Compression.FileSystem" />
Run Code Online (Sandbox Code Playgroud)

您的编辑:

<Reference Include="System.IO.Compression, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" />
<Reference Include="System.IO.Compression.FileSystem, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" />
Run Code Online (Sandbox Code Playgroud)

在Visual Studio中再次加载项目并重建它.我希望它可以帮到你.