我正在使用 MVC 4 和 Entity Framework 5 设计一个新网站,我也在使用 Model-First 来设计我的数据库。我有一个用户实体,我希望它有一个相同类型(用户)的朋友列表。我想使用类似 Facebook 的场景,用户请求友谊,当请求被接受时,他们将成为朋友。我想我应该在用户和自身之间建立一个自引用的多对多连接,但我不知道要保留请求以及如何处理拒绝或接受将用户添加到列表的请求!对不起,如果它变得复杂,我真的试图保持简单,但不能做得更好。
问问题
2199 次
1 回答
5
您应该使用单独的实体来存储这些连接。通过这种方式,您可以添加字段来告知谁发起、何时以及何时被接受/拒绝/阻止,或者在一段时间后您忽略并允许另一次交友尝试;可能一次只允许 100 个好友请求,等等。可能会在建立友谊后转移到另一个实体。您可能还想考虑如何计算朋友的第 1、第 2、第 3 等顺序的数量 - 如果实时完成此计算可以吃掉您的午餐(我认为这就是杀死 Friendster 的原因当天)。祝你好运!
Users
- Id
- Name
FriendRequests
- UserId
- FutureFriendId
- Message
- TimeStamp
- ApproveFlag
- RejectFlag
- BlockFlag
- SpamFlag
- ExpiresDate
Friends
- UserId
- FriendId
- FriendType
- FriendHasThisManyFriends
- TheirFriendsHaveThisManyFriends
- WhenWeBecameFriendsDate
可能有一百万种方法来设置它。没有声称这是最好的。玩得开心!享受。
于 2013-03-01T01:33:44.803 回答