数据库设计 – 在新用户表中存储ASP.net成员资格和openid用户
为了存储使用OpenId登录的用户的用户信息,我计划创建用户表.
我的问题是这个新的用户表将包含我希望asp.net成员资格用户能够填写的新字段(配置文件数据). 我的计划是当用户想要用户名和密码时,他们注册并将信息插入到asp.net_Membership中,然后将他们的guid,username,createDate复制到新的用户表中,以便在代码中我可以只查找用户的数据表,如果他们在OpenId或asp.net会员注册,这无关紧要. 我想覆盖Membership.GetUser,以便它查找我的新用户表,我将添加web.config配置文件属性. 是否更好的性能而不是使用Membership.GetUser(我将调用新的User表): User user = _repository.GetUser(userId); 我的应用程序已经在工作,我需要添加一些页面的引用来支持_repository,所以我只是考虑性能. 我计划创建一个新的用户表吗?我不喜欢复制的想法但是如果将来我想要更改用户名,那么更新新用户表和asp.net_Membership表并不麻烦. 我应该覆盖GetUser并在web.config中添加配置文件属性还是调用我自己的User对象? 创建新的用户表并复制核心数据是最好的方法吗? 解决方法创建一个将providerUserKey映射到用户的OpenID的新表.当用户使用其OpenID注册时,将OpenID添加到providerUserKey映射到此新表.当用户返回您的站点并使用其OpenID登录时,请从映射表中查找其providerUserKey.使用providerUserKey使用providerUserKey登录.这种方法有许多优点. >它允许用户注册并使用用户名/密码登录. 您可以考虑散列用户的OpenID,将其转换为Guid,并存储Guid而不是完整的URL.这将使数据库列和&索引更小更快. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 用SQLyog和NativeSQL将数据从sqlserver导入到mysql
- Sql Server 2008数据库新建分配用户的详细步骤
- sql-server – TSQL:Try-Catch Transaction in Trigger
- 数据库 – Rails 3,ActiveRecord,PostgreSQL – “.uniq”命
- sql-server – SQL服务器如何计算出估计的行数?
- 清除SQLServer日志的两种方法
- 一句Sql把纵向表转为横向表,并分别分组求平均和总平均值
- SqlServer执行计划
- sql-server – Microsoft SQL Server Management Studio 20
- SQLServer汉字转全拼音函数