如何在数据库中连接登录用户和用户记录

本文关键字:用户 登录 记录 连接 数据库 | 更新日期: 2023-09-27 18:04:13

我正在与ASP合作。. NET会员提供程序与SQL后端第一次,我遇到了一些气味,这告诉我,我要么做错了,或者只是没有想到它的所有方式…

Membership提供程序保存了一些表,包括默认的webpages_Membership,它跟踪用户属性,如用户名。在应用程序的数据库中,我有一个employees表,用于跟踪员工的所有用户数据。employees表有一个唯一的标识符id,它被用作多个其他表的外键列,以跟踪诸如谁更新了记录,创建了记录,分配给了谁,谁留下了评论等。

我所做的第一个假设是,我不想将业务逻辑和字段放在webpages_Membership表中,也不想在外键关系中使用UserId列。

我所做的第二个假设是我完全控制注册过程,我可以简单地根据电子邮件地址字段将webpages_Membership表和employees表连接在一起,因为用户的登录将被强制为他们的电子邮件。

这在我的脑海里闻起来很可怕…

取此值User.Identity.Name并在我的数据库中查询employees表,只是为了获得Employee对象填充,因此我可以在记录上设置Id字段,这似乎是错误的。

  • 我该怎么做呢?
  • 将成员数据和业务对象数据连接在一起的最佳方式是什么?
  • 我应该这样做吗?
  • 我应该在用户的会话中存储Employee对象,而不是为每个事务返回数据库吗?

如何在数据库中连接登录用户和用户记录

哪个版本的ASP。你在用。NET吗?

因为如果你使用的是一些最新的版本,你可以使用SimpleMembershipProvider,它允许你使用不同的模型和数据库结构。

查看Jon Galloway的博客文章了解更多细节。