保存路径与整个画面

时间:2016-03-27 05:25:41

标签: c# .net sql-server entity-framework

我想保存个人资料图片,我想知道什么是最佳选择。

- 保存数据库中的路径并根据其位置加载图像。

- 保存整个图像。

我正在使用EntityFrameWork和SQL Server数据库

2 个答案:

答案 0 :(得分:2)

这取决于您的应用需求,请查看此帖Storing Images in DB - Yea or Nay?

中的答案

将图像存储到数据库中有一些优点和缺点

存储在数据库中的图像不需要不同的备份策略。存储在文件系统上的图像

如果图像位于数据库中,则更容易控制对图像的访问。空闲管理员可以访问磁盘上的任何文件夹。需要一个真正确定的管理员才能在数据库中窥探以提取图像

另一方面,存在相关问题

需要额外的代码来提取和流式传输图像 延迟可能比直接文件访问慢 数据库服务器上的负载更重

答案 1 :(得分:1)

我建议将图像保存在文件系统的某个位置,并将其存储在数据库中。

优点:

  1. 图像将是静态文件,可以由Web Server直接提供,也可以轻松缓存。
  2. DB服务器不会因为获取图像数据的大量请求而过载。
  3. 无需动态代码来提供文件。
  4. 文件系统存储比数据存储更便宜。
  5. 在整个网络上,大多数图像都存储在文件系统中。