不能使用ZipArchive类

时间:2016-04-06 17:09:46

标签: c# asp.net .net

我正在开发一台运行Windows Server 2012 r2的机器,默认情况下必须使用4.5框架版本,但是当我尝试使用ZipArchive类时,只有4.5 .net框架可用,如果我运行这个简单的代码:

<%@ Page Language="C#" ResponseEncoding="utf-8" Trace="true" %>
<%@ Import Namespace="System.IO.Compression" %>
<%
  ... variables etc ...

using (ZipArchive archive = ZipFile.OpenRead(zipPath))
{

}
%>

我收到此错误:

CS0246: The type or namespace name 'ZipArchive' could not be found (are you missing a using directive or an assembly reference?)

从跟踪中我得到了关于框架的信息:

Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34248

我尝试在iis管理器中更改框架clr版本,但唯一的选项是2.0和4.0。 我做错了什么? :/

1 个答案:

答案 0 :(得分:1)

看起来ASPX页面只能引用4.0 DLL而不是4.5,而新的ZipFile和ZipArchive东西只在4.5框架中,特定于4.5。不确定背后的细节,但这只是它的表现。

要解决此问题并在ASPX文件中使用这些类,请在web.config中添加以下内容{/ 1}}部分:

system.web/compilation