I ran into an issue regarding the open/save prompt used for exporting data. It had worked for as long as I could remember, but after upgrading the site to use an SSL certificate the prompt stopped working on one page and threw an error in Internet Explorer.
Research confirmed there are known IE bugs around setting ContentType and Content-Disposition to force an attachment to be streamed directly to the user, rather than having to save the file to disk first and worry about disk space and permissions.
It took me a while to pin down what made it work over HTTPS, so here is the code:
Response.ClearHeaders()
Response.ContentType = "application/csv"
Response.AppendHeader("Content-Disposition", "attachment; filename=Registrations.csv")
Response.ClearHeaders() is the line that solved it.
This appears to be an IE-specific problem. I found several posts about it proposing different solutions, most of them involving setting Pragma or other header values, and none of those worked for me. So rather than try to change individual header values, I cleared them all out and set exactly what I needed: the content type and the content disposition.
After adding that one line the page worked over both HTTP and HTTPS, and in every browser I tested.