2009-07-29

Firefox/Safari de Response.BinaryWrite ile yazılan dosyaların hatalı alınması



Eğer Bir handler/vb. ile bir stream nesnesini karşı tarafa yollerken gönderdiğiniz içerik IE'de düzgün çıkıp diğer browserlarda sıkıntı yaratıyor olabilir.
Aşağıdaki kod ile Response 'i bufferlayıp Response.End'e kadar birşey yollamayarak sorunu çözebiliriz:z

With Response
.Clear()
.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"
.Cache.SetCacheability(HttpCacheability.Private)
.Expires = -1
.Response.Buffer = true 'önemli nokta
.AddHeader("Content-Disposition", String.Format("{0};FileName={0}", "attachment", "a.docx"))
.OutputStream.Write(buffer, 0,buffer.Length)
.End()
End With