我第一次使用SQL后端与ASP.NET成员资格提供程序一起工作,我遇到了一些有气味的东西,这告诉我,我做错了或者只是没有想到这一切通过......
成员资格提供程序会创建一些表,其中包括跟踪用户属性(如用户名)的默认值webpages_Membership
。在我的应用程序数据库中,我有一个employees
表,用于跟踪员工的所有用户数据。 employees
表具有唯一标识符id
,用作多个其他表的外键列,用于跟踪更新记录,创建记录,分配给谁以及留下评论的人等事项等等。
我做的第一个假设是我不想将业务逻辑和字段放在webpages_Membership
表中,也不想在外键关系中使用UserId
列。
我做的第二个假设是我完全控制注册过程,我可以简单地根据电子邮件地址字段加入webpages_Membership
表和我的employees
表。用户的登录将被强制成为他们的电子邮件。
获取此值User.Identity.Name
并查询数据库中的employees
表只是为了填充Employee
对象,以便我可以在记录上设置Id
字段似乎错误
答案 0 :(得分:1)
您使用的是哪个版本的ASP.NET?
因为如果您使用的是某些最新版本,则可以使用SimpleMembershipProvider,它允许您使用不同的模型和数据库结构。