2011-11-30 85 views
3

我使用下面的C#代码将.doc文件保存为SQL Server数据库varbinary(max)我应该如何将.doc文件保存到SQL Server数据库

我可以保存文件,但是当我检索文件并想要在网页上显示内容时,我的代码正在下载文件,我对如何处理它非常困惑。

我正在寻找的确切功能是naukri.com上传简历并给出预览。我的代码是:

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.OutputStream.Write(btYourDoc, 0, fileContent.Length); 

Response.BinaryWrite(btYourDoc); 

Response.End(); 

回答

0

squillman是对的。有大量的第三方组件执行Word - > HTML转换。

另一个可能更适合Intranet站点的选项是在服务器上安装Word。

这样的一个例子是在这里:

http://www.c-sharpcorner.com/UploadFile/munnamax/WordToHtml03252007065157AM/WordToHtml.aspx

实际上,该文档被打开,被救出来的HTML,那么随后的请求可以检索预览文件的HTML版本。

办公自动化服务器端存在许多缺陷 - 请参阅http://support.microsoft.com/kb/257757了解更多信息。

2

您的文件得到下载,而不是显示的原因是因为你设置的内容类型为application/MS-字。这告诉浏览器下载该文件(它们不能本地处理该类型的文件,因此它们委托给外部应用程序)。

您需要知道如何解释MS Word格式的代码,并将其转换为可在浏览器中查看的内容(HTML,某种插件可以为您完成此操作等)。保存原始Word文档,然后以相同状态发送回客户端基本上只是让他们下载一个Word文件。

+0

我同意你的意见 – Tan

0

下面是一个很好的例子,最终结果由用户决定是否下载或查看文件here's the link,但@Squillman是正确的,可以通过放置Response头来告诉它下载。

相关问题