为什么我不能使用TransmitFile在浏览器中打开xls文件?

时间:2014-12-05 07:49:40

标签: c#

我用.XLS/.DOC/.PDF打开Response.TransmitFile()个文件。 PDF已打开,但XLS - 和DOC文件未打开。

string path = @"D:\\Files\\" + Request.QueryString.Get("PSFname");

int startIndex = Request.QueryString.Get("PSFname").IndexOf(".");
string type = Request.QueryString.Get("PSFname").Substring(startIndex + 1);

if (type == "doc" || type == "docx")
{
    Response.ContentType = "application/ms-word";
}
else if (type == "xls" || type == "xlsx")
{
    Response.ContentType = "application/x-msexcel";
    Response.AppendHeader("Content-Disposition", "attachment; filename=" + Request.QueryString.Get("PSFname"));

}
else if (type == "pdf" || type == "PDF")
{
    Response.ContentType = "Application/pdf";
}
Response.TransmitFile(path);

1 个答案:

答案 0 :(得分:1)

您可以在浏览器中打开PDF文件,因为您的浏览器中添加了pdf文件的附加组件,可以在浏览器中为您打开pdf文件。

但Word和Excel文件中没有相同的附加组件。所以这些文件不会在浏览器中打开。