MVC3用户身份验证链接

时间:2012-05-08 00:51:09

标签: asp.net-mvc-3 entity-framework asp.net-membership

在我的应用程序中,我有一个可以创建Tournament个对象的管理员。创建对象时,该服务还会创建一个用户(基于锦标赛创建者在创建时输入的信息)。用户的用户名是导演的电子邮件,密码随机生成,然后邮寄给导演。

当导演使用他的电子邮件地址和密码登录时,我需要能够将他链接到他自己的锦标赛,以便只允许他编辑他自己的锦标赛的详细信息。我试图找到一种方法将TournamentId存储在默认的ASP Net Users数据库中,但是没有成功。

我看了this这个问题肯定会对我有所帮助,但我无法弄清楚它是如何适用于我的问题的。当用户登录时,我无法将TournamentId放入用户数据中,因为我不知道。

我是否应该在Tournament表中查找哪个ID与登录时输入的电子邮件地址相对应并将其存储在userData中?这种方式似乎很不优雅。

1 个答案:

答案 0 :(得分:1)

我猜你应该在锦标赛表中有一个CreatedBy列,你可以在其中存储创建锦标赛的用户的ID。然后,当用户登录时,获取他的id(可能来自会话,如果你将其存储在那里),执行选择查询where CreatedBy=loggedInUserId。这应该可以解决问题。