从SQL到网页

时间:2016-08-22 09:56:10

标签: c# sql .net file binary

我已经以二进制格式在SQL db中存储了.doc / .docx和pdf文件。我想在Web浏览器中显示它们,并使用以下代码。这里.pdf文件没有问题,它在网页中正确显示。但对于.doc / .docx,网页中会显示无格式数据。

DataSet ds = GetData(proID);
            Byte[] bytes = (Byte[])ds.Tables[0].Rows[0]["Resume"];
            Response.Buffer = true;
            Response.Charset ="";
            Response.Clear();
            Response.Cache.SetCacheability(HttpCacheability.NoCache);

            if (ds.Tables[0].Rows[0]["ContentType"].ToString() == ".doc" || ds.Tables[0].Rows[0]["ContentType"].ToString() == ".docx")
            {
                Response.ContentType = "application/vnd.ms-word";
            }
            else if (ds.Tables[0].Rows[0]["ContentType"].ToString() == ".pdf")
            {
                Response.ContentType = "application/pdf";
            }
            Response.BinaryWrite(bytes);
            Response.Flush();
            Response.End();

.doc / .docx的if条件不起作用..但是.doc / .docx文件的内容类型是" text / html"。谁能帮助我做到这一点?

1 个答案:

答案 0 :(得分:0)

下面应该可以工作。

HttpContext.Current.Response.ContentType = "application/vnd.ms-word";

HttpContext.Current.Response.ContentType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"