Asp.net 如何在网页内显示保存在数据库中的Word文档

Asp.net 如何在网页内显示保存在数据库中的Word文档,asp.net,sql-server,ms-word,Asp.net,Sql Server,Ms Word,我正在将word文档转换为varbinary并保存到SQL Server数据库。我可以保存数据。我希望将上传的Word文档显示回用户,就像Word中简历的外观一样,就像实际的Word文档嵌入到网页本身一样 我有下面的代码,这是下载保存的Word文档作为Word文件。请告诉我在浏览器中显示word文档的最佳控件 byte[] fileContent = new byte[fuResume.PostedFile.ContentLength]; fuResume.Posted

我正在将word文档转换为varbinary并保存到SQL Server数据库。我可以保存数据。我希望将上传的Word文档显示回用户,就像Word中简历的外观一样,就像实际的Word文档嵌入到网页本身一样

我有下面的代码,这是下载保存的Word文档作为Word文件。请告诉我在浏览器中显示word文档的最佳控件

 byte[] fileContent = new byte[fuResume.PostedFile.ContentLength];
            fuResume.PostedFile.InputStream.Read(fileContent, 0, fuResume.PostedFile.ContentLength);
            //lblAppliedMessage.Text = ByteArrayToString(fileContent);

            //lblAppliedMessage.Text = BitConverter.ToString(fileContent).Replace("-", string.Empty);


            byte[] btYourDoc;
            btYourDoc = fileContent;
            Response.ContentType = "application/ms-word";
            Response.AddHeader("Content-Disposition",
            "inline;filename=yourfilename.doc");


            Response.BinaryWrite(btYourDoc);
            Response.End();

如果web服务器或应用程序服务器上有word,我会将来自数据库的流保存到临时文件中,用word打开,另存为html并在web浏览器中呈现此html

编辑:

如评论中提供的链接所述:您应该尽可能避免在服务器端代码上使用Word/Excel Automation,以下是本文的MS摘录:

Microsoft目前不推荐,也不支持, 从无人值守的环境中实现Microsoft Office应用程序的自动化, 非交互式客户端应用程序或组件(包括ASP, NET、DCOM和NT服务),因为Office可能表现出不稳定 在此环境中运行Office时的行为和/或死锁

建议的解决方案/备选方案包括:


Microsoft明确表示不应在服务器上安装Microsoft Office,因为它在长时间运行时会出现内存泄漏问题。@rtpHarry能否请Microsoft发送此声明的链接?如果您在使用后处理并释放office对象,我认为这不是导致泄漏的原因,无论如何,泄漏都是最小的。我从来没有看过你提到的文章(但还没有链接),在任何情况下,word关闭或IIS应用程序池回收后,内存不会释放吗?当然,链接在这里