当我点击链接时,如何直接打开文件(从db中保存的二进制数据)?

时间:2016-03-01 05:06:02

标签: c# asp.net telerik

我正在使用ASP.NET,C#和telerik开发文件上传功能。我正在使用telerik:RadAsyncUpload控件。我已经将文件转换为字节数组并保存在SQLServer数据库中。 在更新页面上,我需要直接打开文件(从db中保存的二进制数据),当我点击链接时。我需要在单独的浏览器选项卡/窗口中打开该文件。我不想在检索文件时在任何本地驱动器上保存文件。

请帮帮我。

我试过了什么? 暂时,我将二进制数据保存在位于某个本地驱动器的空白文件中,然后将其附加到该链接。但是我不希望在检索文件时在物理上保存文件。我想.....当用户点击链接时,二进制数据将直接在单独的浏览器选项卡上刷新,他可以查看该文件。

1 个答案:

答案 0 :(得分:0)

创建一个处理程序(任意一个或一个aspx页面,无论你发现什么更容易)将读取数据库(例如,基于查询字符串参数)并返回相应的响应(通过Response对象,例如,Response.BinaryWrite( ))。

请注意,您应该设置相应的标题,并且根据您返回的文件类型,浏览器可能会提示用户打开/保存它而不是内联打开它。您可以通过内容处置HTTP标头控制它,但它最终取决于浏览器。

此外,您可能希望使用RadWindow打开该处理程序,以将浏览器弹出窗口降至最低,以降低浏览器阻止它们的风险。