0

MVC4とEntityFramework5を使用して新しいWebサイトを設計しています。また、Model-Firstを使用してデータベースを設計しています。Userエンティティがあり、同じタイプ(User)の友達のリストが必要です。ユーザーが友情をリクエストし、リクエストが受け入れられると友達になるというFacebookのようなシナリオを使用したいと思います。ユーザーとそれ自体の間に自己参照の多対多の接続を作成する必要があると思いますが、リクエストを保持する方法と、ユーザーをリストに追加するためのリクエストの拒否または受け入れを処理する方法がわかりません。複雑になってすみません、私は本当にそれをシンプルにしようとしましたが、それ以上のことはできませんでした。

4

1 に答える 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 に答える