0
ASP.NET MVC 4应用程序将文件存储在数据库中并允许下载它们。如何允许通过自动打开下载任何文件类型
Postgres的表dokumarh有两列
其用- 文件名的文本名称。
应用程序允许从浏览器下载文件。下载的文件应该打开该扩展的默认OS应用程序。例如,文档为字,XLS Excel文件,TXT为记事本等
此功能使用控制器
实现 public FileStreamResult ShowDocument(string filename)
{
var manus = Db.QuerySingle(@"
select filename, content
from dokumarh
where [email protected]
", filename);
return new FileStreamResult(new MemoryStream(manus.content), "???")
{
FileDownloadName = manus.filename
};
}
MVC filestreamresult需要发送参数和内容类型标有“???”
在上传期间,只有文件名可用;没有内容类型。
如何指定正确的内容类型?还是有可能只返回文件名而不指定内容类型?或者是否有一个MVC方法,数据库或库可以从文件扩展名中找到内容类型?
您可以使用[MimeMapping](https://msdn.microsoft.com/en-us/library /system.web.mimemapping.aspx)class –
啊!我从来不知道它。谢谢 – Shyju
@StephenMuecke解决了这个问题。你可以把它写成答案,这样我就可以标记和上传。 – Andrus