【问题标题】:How to create my custom MembershipProvider in MVC4如何在 MVC4 中创建我的自定义 MembershipProvider
【发布时间】:2013-01-12 03:54:03
【问题描述】:

我有我自己的表供我的数据库中的用户使用。它们被称为TeachersStudents。我正在测试 ASP.NET MVC4 SimpleMembership,但我想我需要创建一个新的成员资格提供程序。

每个表都有自己的密码字段(纯文本)

这是我设计的图片。我想知道这是否是一种登录和识别正在记录的用户类型(学生或教师)的好方法,还是我可以只使用一个名为 Users 的表来简化这一点,而不是实现我自己的自定义成员资格(使用默认 UserProfile)

【问题讨论】:

  • 为什么不能使用简单会员?您可以拥有自己的桌子
  • 你能给我举个例子吗?直到我知道,简单的成员资格只使用一个名为 UserProfiles 的表,我需要扩展两种类型的用户(学生和教师)
  • SimpleMembership 不会限制您进行任何配置文件设置,实际上没有配置文件设置。只需在创建用户后创建您的个人资料信息,以便您拥有用户的主键。这是简单成员资格中更容易的部分,您可以再次控制您的数据 - 所以是的 - 它只是另一个表,您可以在用户登录后使用实体框架读取。

标签: asp.net-mvc asp.net-mvc-4 membership-provider


【解决方案1】:

通常在设计会员系统时,您会从一个基本的users 表开始。然后从那里,您可以拥有user_types(可能是学生、教师或将来的任何其他人,如父母)。然后,在您的应用程序中,您可以测试以查看正在登录的用户类型并做出相应的响应。

如果您需要为特定用户类型(例如教师)存储其他数据,那么您可以创建一个添加到基本 users 表的表,并通过使用 Teacher 模型将其复制到您的模型中扩展基本 User 模型,添加您可能需要的任何教师特定逻辑。

【讨论】:

  • 感谢您的回复,所以我不会迷路。因此,您是否建议在一个名为 User_Profile (Id, FullName) 的公用表中使用,密码将由 Membership 管理。例如,如果我需要为学生提供更具体的逻辑,则该实体需要 Class Id,所以我用 Student 引用 Class,对吗?
  • 另一个问题,您建议复制什么。那部分我有很多疑问。
【解决方案2】:
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-08
  • 2011-08-14
相关资源
最近更新 更多