C# 在c中创建和下载zip文件#

C# 在c中创建和下载zip文件#,c#,.net,C#,.net,在我的c#应用程序中,我试图从用户提供的附件中创建一个zip文件,然后下载zip文件。首先,我尝试使用SharpZipLib,但它不起作用 我遇到了以下错误: 线程中止错误 现在我正在尝试使用 系统IO压缩 但这里有点不对劲,因为我犯了这个错误: The type or namespace name 'ZipFile' could not be found (are you missing a using directive or an assembly reference?) 当我尝试这样做

在我的c#应用程序中,我试图从用户提供的附件中创建一个zip文件,然后下载zip文件。首先,我尝试使用SharpZipLib,但它不起作用

我遇到了以下错误:

线程中止错误

现在我正在尝试使用

系统IO压缩

但这里有点不对劲,因为我犯了这个错误:

The type or namespace name 'ZipFile' could not be found (are you missing a using directive or an assembly reference?)
当我尝试这样做时,我现在已经添加了dll引用

            using (ZipFile zip = new ZipFile())
            {
                zip.CompressionLevel = CompressionLevel.Fastest;

                zip.AddSelectedFiles(logoimage, "", false);
                zip.Save(HttpContext.Current.Response.OutputStream);
            }
我得到这个错误

Cannot declare a variable of static type 'System.IO.Compression.ZipFile'    
有什么想法吗?

看看MSDN


确保您有.NET 4.5或更高版本。我假设您这样做,因为您正在尝试使用System.IO.Compression。

使用
System.IO.Compression
可以使用类来压缩和解压缩流


如前所述,要使用ZipFile类,必须在项目中添加对
System.IO.Compression.FileSystem
程序集的引用;否则,您将在尝试编译时收到以下错误消息:
名称“ZipFile”在当前上下文中不存在

正如错误所说的
System.IO.Compression.ZipFile
是一个静态类,因此您无法创建一个
新的
实例


ZipFile
类仅公开压缩目录的静态方法,以压缩所需的特定文件。

是否已将Dll添加为引用?否,如何添加?在解决方案资源管理器中,右键单击项目,然后单击
添加引用
,浏览到您需要导入的DLL文件。检查此链接以添加DLL作为参考,只需选择任何关于ZipFile的示例,它是ZipArchive周围的静态帮助器类…我正在查看您给出的示例,ZipArchive的问题是它需要一个已压缩的文件夹,在我的情况下,这不是真的。