cid:example1
在IE8中查看时。保存到磁盘后打开文件时,显示为
mhtml:file://C:\Documents
和
Settings\benjynito\Desktop\output634172401776447258.mht!cid:example1
. 或者在浏览时使用你得到的工作方法之一
mhttp://...output123.mht!cid:example1
.
这个输出.MimeTypeis消息/rfc822。我也尝试过application/octetstream和multipart/related。
IE似乎假设请求有一个HTML结果,而不是破译新的内容类型。但是对于动态样式表、脚本等,您可以这样做。。。所以我真的不相信。我看不出有什么明显的区别。我刚试过,二进制写在歌剧里很好用。
如果我真的要担心写到一个临时目录,然后重定向到文件,我会。我只是希望避免清理临时文件。我想做的是不可能的吗?下面是一个编写文件的示例。
提前谢谢!
if (response != null && response.Output != null)
{
Response.Clear();
Response.AddHeader("Content-Type", response.Output.MimeType);
Response.AddHeader("Content-Disposition", "attachment;filename=output" + DateTime.UtcNow.Ticks.ToString(CultureInfo.InvariantCulture) + "." + response.Output.Extension);
// Response.Write( System.Text.Encoding.ASCII.GetString(response.Output.Bytes));
Response.BinaryWrite(response.Output.Bytes);
//Response.Clear();
//Server.Transfer("/ISV/Forms/Test/output634172397522707394.mht");
//Response.Clear();
//Response.WriteFile( Server.MapPath("/ISV/Forms/Test/output634172397522707394.mht"));
Response.Flush();
Response.End();
}