【发布时间】:2017-02-28 02:04:52
【问题描述】:
我正在构建一个 .Net/Sql Server 站点,该站点具有一个用户个人资料页面,该页面可以显示该人的个人资料照片(如果存在)。我将照片存储在服务器上的本地文件夹中。每个用户都有自己的子文件夹,使用他们的数据库生成的用户 ID 命名。并且照片文件始终称为 profile.jpg
在数据库中,我有一个用户表来存储个人资料数据,我正在考虑添加一个名为 profile_photo_exists 的列来指示个人资料照片是否存在。
我的问题是,当我可以获取一些服务器端代码来检查用户的文件夹以查看照片文件是否存在时,此 profile_photo_exists 列是否多余。我在想最好有一个数据库列,因为每次检查文件系统可能不会那么高效。不过,我的问题是它看起来像是数据重复,我担心它会不同步。例如,文件夹中缺少文件,但数据库说有一个。
还有其他很好的理由来保留该专栏吗?
【问题讨论】:
-
将图像存储在数据库中并通过 ID 绑定到用户帐户会更好吗?
-
我目前正在构建一个 AJAX 站点,我的计划是将所有内容存储在数据库中。我通过调用 asp web 服务函数来做到这一点。
-
这样做的问题在于它无法扩展。如果你想把你的图片转给 CDN 怎么办?或其他一些外部存储。
-
我想你是对的。不过我想到了 Azure 数据库。我还在学习,请不要介意。我喜欢被纠正。
标签: c# sql asp.net sql-server database