我正在尝试使用BinaryWriter
在浏览器中打开文件。这会导致对话框窗口打开并提示用户保存或打开文件。那种行为很好;但是,如果我选择open,则会再次调用aspx页面,经过漫长的等待后,文件最终会打开。
我设置了ContentType
Response.BinaryWrite(binary);
Response.End();
Repsonse.Close();
只有excel和word文件才会出现此问题。
浏览器IE8
答案 0 :(得分:1)
做同样的替代方式。你可以看一下:
FileInfo fileInfo = new FileInfo(yourFilePath);
context.Response.Clear();
context.Response.ContentType = contentType; //Set the contentType
context.Response.AddHeader("content-disposition", "attachment; filename=" + Path.GetFilename(yourFilePath));
context.Response.AddHeader("Content-Length", fileInfo.Length.ToString());
context.Response.TransmitFile(yourFilePath);
希望这会有所帮助