我很好奇我应该如何在我的应用程序中组织图像存储。它们将存储在磁盘上,并将路径/ URL存储在数据库中,但是我的应用程序变得复杂,图像组织让我感到莫名其妙。我使用的技术是ASP.NET MVC 3 + EF 4.1 Code First(这在复杂的关系中证明是困难的)。图像数据库组织
这是一个基于家庭的应用程序,所以有一个家庭表,会员表和一个FamilyMember表链接到两个。还有一个FamilyEvent和MemberEvent表来跟踪家庭或成员生活中的事件。
使用案例
成员可以上传多张资料图片(可能在“个人资料”的专辑放?)
成员可以上传“家庭”的照片,被连接到家庭对象,并为家庭投入某种类型的专辑。
会员可以添加会员活动,并将多个图像附加到会员活动。
会员可以添加家庭活动,并将多个图像附加到家人的活动中。
这些是基本用例。
我的想法
基地 “图片” 表ID,描述,也许上传的用户ID。
与ID,pictureId,MEMBERID等MemberProfilePicture表...用ID,pictureId,[会员ID?],membereventid等
MemberEventPicture表...用ID,pictureId
FamilyEventPicture表,[familyId?],familyeventid等...
这将允许一个家庭或成员基本上将图片“链接”到另一个个人资料图片/会员活动/或家庭活动。
我的问题
这是正确的,还是我过于复杂吗?除了多个表格以外,我没有看到其他任何方式来表示不同的东西,这些东西都涉及基本图片表格。任何人都可以提出任何建议,以了解如何改进此模型?虽然我知道可能有很多定义需要更正,但我正在寻找解决方案,以便如何组织我的应用程序的成像方面,或者改进已有的方面。
所以基本上我提出的是要走的路。图片表,ProfilePicture,MemberPicture,FamilyEventPicture表格等... – Jack
您不需要多个XXXXXPicture图表。如果你想要一个链接器,你可以放置一个'枚举'。 – Haedrian
你是什么意思?你说我可以通过链接表(比如ProfilePicture)将图片A链接到配置文件X.这不是说说事件是一样的吗?事件和图片的链接表(EventPicture)? – Jack