2011-03-06 63 views
2

我想從https網站導出excel文件,它與 firefox和其他瀏覽器,但在IE瀏覽器正在我錯誤,該網站不可用或該文件未找到。導出到excel通過HTTPS(SSL)使用IE不工作在asp.net網站

我有研究的問題,我發現它是緩存相關,所以我已經改變在這個頁面的標題,所以它會允許緩存,但它仍然無法正常工作。

這是代碼

Response.Cache.SetAllowResponseInBrowserHistory(真)的卡扣;

Response.Cache.SetCacheability(HttpCacheability.Public); 
    Response.Cache.SetMaxAge(new TimeSpan(1, 0, 0)); 
    Response.Cache.SetAllowResponseInBrowserHistory(true); 

    Response.CacheControl = "Public"; 

任何幫助將是巨大的謝謝

回答

1
 #region For Download to work on HTTPS 
Response.ClearHeaders(); 
    Response.Cache.SetCacheability(HttpCacheability.Private); 
    Response.Buffer = true; 
    Response.AddHeader("Content-Transfer-Encoding", "binary"); 
 #endregion 
Response.Clear();  
    Response.AddHeader("content-disposition", "attachment;filename=Temp.xls"); 
    Response.Charset = ""; 
    Response.ContentType = "application/vnd.xls"; 
    StringWriter strWriter = new StringWriter(); 
    HtmlTextWriter htmlWrite = new HtmlTextWriter(strWriter); 
    string heading = "<h4 align='left'>Temp Excel Cube</h4>"; 
    strWriter.Write(heading); 
    gvTemp.RenderControl(htmlWrite); 
    Response.Write(strWriter.ToString()); 
    Response.End(); 

我想這就是你正在找。它適用於我的HTTPS,我已經將網格導出到Excel工作表,您也可以使用它來從物理位置獲取文件。 :)