使用AppendHeader时出现ParserError

本文关键字:ParserError AppendHeader 使用 | 更新日期: 2023-09-27 18:11:41

我正在调用一个方法,我希望让用户从我的服务器下载一个文件:

string path = MapPath(filePath);
     string name = Path.GetFileName(path);
     string ext = Path.GetExtension(path);
     string type = "";
     // set known types based on file extension  
     if (ext != null) {
        switch (ext.ToLower()) {
           case ".pdf":
              type = "Application/pdf";
              break;
        }
     }
     Response.AppendHeader("content-disposition",
         "attachment; filename=" + name);
     if (type != "") {
        Response.ContentType = type;
     }
     Response.WriteFile(path);
     Response.End(); 

我得到以下错误:

Foutdetails webpagina

Gebruikersagent: Mozilla/4.0 (compatible;MSIE 8.0;Windows NT 5.1;三叉戟/4.0;.net CLR 2.0.50727;.net CLR 3.0.4506.2152;.net CLR 3.5.30729;.NET4.0C;.NET4.0E)Tijdstempel: Mon, 17 Oct 2011 14:09:42 UTC

berichd: sys . webforms . pagerequestmanagerparserererrorexception: Bericht数据不是基于服务器的,而是基于geparseerd。通过响应。write(),以及响应过滤器HttpModules,对门的响应数据服务器跟踪进行了处理,从而解决了门的响应数据服务器跟踪问题。详细信息:这是四种opgetreden类型的数据格式,格式为PDF-1.6 %%��1246。Regel: 4723Teken: 21代码:0URI: http://localhost: 8080/ScriptResource.axd ? d = pIR8OXvZoRojyW4g1LrIxQJ_PBSxowcac32J1wj6iuXDcoXm42o2_-RXqxdcfui11rd_ENAmsJBy6ZuWa6y59BIFz75plfDb9hceJY8IfLYyZk116lcE26DPuxB8-NB46RAswwOW4RN2EGnFK-0MTXrgj2R-IGGgcAS9lqbJpejfFHbU0& t = ffffffffdf4bca0c

对于如何解决这类错误有什么建议吗?

使用AppendHeader时出现ParserError

如果您通过AJAX通过UpdatePanel完成此操作,则需要将按钮添加为PostBackTrigger。您还可以在代码隐藏中添加按钮作为回发控件,如下所示:

ScriptManager.GetCurrent(Page).RegisterPostBackControl(Button1);