私の質問は に関連しています「System.IO.Compression」名前空間に「ZipFile」クラスが見つかりませんでした
しかし、私は4.5.1 webformsプロジェクトのDLLを参照しました。
私のプロジェクトのプロパティは私に与えます:Target framework: .Net Framework 4.5.1.
およびweb.config:
<compilation debug="true" targetFramework="4.5" />
何が欠けていますか?
解決策は、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>
この回答 から「インストール済みの.Net 4.5ですが、Visual C#でZipFileクラスを使用できません」から取得
参照に名前空間が存在しないため、同じ問題に直面しました。次の手順を実行してください。
私の場合、参照なし
参照をインストールした後
1)nugetからsystem.Io.compressionをここにインストールします
2)ここでnugetからsystem.Install-Package 40-System.IO.Compression.FileSystemをインストールします。
プロジェクトファイルの参照を直接更新できます(プロジェクトをアンロードしてこれを編集するか、メモ帳で.csprojファイルを開いて編集します)
変更前編集は以下と同じでなければなりません:
<Reference Include="System.IO.Compression" />
<Reference Include="System.IO.Compression.FileSystem" />
変更後編集:
<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" />
visual Studioにプロジェクトを再度読み込み、再ビルドします。お役に立てれば幸いです。
using (var Zip = new ZipArchive(System.IO.File.OpenRead(zipFileName))) { ... }