客户端得到下载的文件是用语句:context.Response.BinaryWrite(stream.ToArray());来实现的.
但现在的情况是文件以乱码直接呈现在了页面中,而不是正常情况下浏览器弹出一个"是否保存文件"的系统对话框.
我估计是没有设置好context.Response.ContentType,但提供给用户的下载文件类型有多种:.rar .zip .txt .avi,那么这种情况下应该怎么做才能显示浏览器那个提示"是否保存"的对话框?
但现在的情况是文件以乱码直接呈现在了页面中,而不是正常情况下浏览器弹出一个"是否保存文件"的系统对话框.
我估计是没有设置好context.Response.ContentType,但提供给用户的下载文件类型有多种:.rar .zip .txt .avi,那么这种情况下应该怎么做才能显示浏览器那个提示"是否保存"的对话框?
string filename = System.IO.Path.GetFileName(filepath);
Response.Clear();
Response.ContentType = "application/octet-stream";
Response.AddHeader("Content-Disposition", "attachment; filename=" + filename);
Response.Flush();
Response.WriteFile(filepath);
Response.End();