2

我只需要回答下面提到的问题。但首先让我为您提供场景

设想

我创建了一个基于 webforms 的 asp.net 应用程序。以下是应用程序的组件

  1. 具有 Varbinary(MAX) 列的表。
  2. 带有网格视图和文件上传控件的网页。

我已经编写了使用 fileupload 组件上传/下载任何文件的代码。这工作得很好。

问题。

我正在研究提供打开文件功能的可能性。澄清一下,打开文件(与下载文件不同)是根据文件类型打开文件 IE 如果 .xls 文件然后是 Excel,.doc 然后是 word 等。换句话说,使用注册程序打开文件。

这在 asp.net 应用程序中可能吗?
是否有防止这种情况发生的安全考虑?(似乎很有可能)

事实上,我是一位经验丰富的 winforms 程序员,但我对 asp.net 还比较陌生。

欢迎任何答案/提示/附加信息

提前致谢

游牧民族

4

1 回答 1

1

检查以下 StackOverflow 答案:C# Asp.net write file to client

这些是您需要的 3 行:

Response.ContentType = "text/plain";
Response.OutputStream.Write(buffer, 0, buffer.Length);
Response.AddHeader("Content-Disposition", "attachment;filename=yourfile.txt");

一件重要的事情是您需要研究不同文件扩展名的不同内容类型。XLS/X、DOC/X、PDF 等都有不同的 ContentType 字符串(很容易搜索)。

好消息是,您可能已经将文件名存储在数据库中,因此您可以使用字符串操作来获取文件扩展名,然后从数据库列表扩展名和 ContentType 中查找它,或者只是创建一个列表和“硬编码”在那里。

于 2013-06-27T16:11:26.707 回答