我有一个使用Owin / WebApi托管的.net服务器。我有一个下载文件的控制器。这些文件作为blob存储在数据库中。目前,blob被加载到内存中,然后流式传输到客户端。这很好。但是,我想避免将整个blob加载到服务器上的内存中,因为它可能会变得很大。
这样做的正确方法是什么?我需要先将其保存到文件中吗? 目前我正在使用MS-SQL数据库,但后来也应该与Oracle合作。
我在.net 4.5.2。
更新
我在这个答案中找到了一个解决方案: https://stackoverflow.com/a/20221805/1682946
PushStreamContent完成了这项工作!
不幸的是,由于某些原因,这不适用于OracleDataReader。有什么想法吗?