加入收藏 | 设为首页 | 会员中心 | 我要投稿 南京站长网 (https://www.025zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

entity-framework – SQL FileStream Entity Framework存储大文

发布时间:2021-04-01 14:40:52 所属栏目:MsSql教程 来源:网络整理
导读:当我想将文件存储在文件流列中时,我总是需要将整个二进制文件读入内存: using (MemoryStream memoryStream = new MemoryStream()){ sourceStream.CopyTo(memoryStream); binaryStore.Content = memoryStream.ToArray(); //Content = filestream column}

当我想将文件存储在文件流列中时,我总是需要将整个二进制文件读入内存:

using (MemoryStream memoryStream = new MemoryStream())
{
   sourceStream.CopyTo(memoryStream);
   binaryStore.Content = memoryStream.ToArray(); //Content = filestream column
}

有实体框架的方法,直接放流吗?因为,如果我想上传一个大文件,我会得到一个OutOfMemoryException.

解决方法

没有在EF中看到有关FILESTREAM支持的任何更新. (以前作为.net 3.5 sp1版本 here的部分支持提到).我认为实体框架正在通过TSQL访问FILESTREAM,并且显然您将无法获得FILESTREAM的流性能优势. (需要将所有文件内容读入内存)

因此,推荐的方法是使用SqlFileStream .Net API.

http://lennilobel.wordpress.com/2011/08/22/using-sqlfilestream-in-c-to-access-sql-server-filestream-data/

(编辑:南京站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读