使用asp.net2.0的Membership服务与自己写的用户数据库关联
2007-06-06 15:41
344 查看
使用asp.net2.0的Membership服务与自己写的用户数据库关联
Membership服务提供了成员服务,往往自己也会写很多的数据库,其中需要和成员关联,完全用Profile不现实,这里就涉及到UserID的问题
我采取的方法是单独建立一个表,建立MemberShip提供的UserID和自己的数据库之间的一对一关系
可能你觉得维护这个表是个很麻烦的事情,其实维护这个表并不麻烦,我们要做的就是在新建和删除用户的时候自动在这张表里加入个删除相应的数据。
我在这个表里面加入了三个字段,UserID存放Guid类型的MemberShip中的ID,uid存放自动增加的uid,为方便起见,也加入了userName字段存放用户名,事实上完全还可以在这个数据表里面加入其他用户信息,不过数据库概论告诉我们,这个一对一的表里面不该放太多的东西
我们新建一个类,继承默认的SqlMembershipProvider
代码如下:
public class UserMemberShipProvider : SqlMembershipProvider
其中DbHelper是操作数据库的DAL类,就是做一些基本的添加删除工作
这样在自己的数据库中就可以完全按照uid进行处理,不用管任何和那个Guid相关的问题了。
对了 看看web.config里面怎么写的
<membership>
<providers>
<remove name="AspNetSqlMembershipProvider"/>
<add name="AspNetSqlMembershipProvider"
type="ABSC.MemberShipProvider.UserMemberShipProvider"
connectionStringName="LocalSqlServer"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="1"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
/>
</providers>
</membership>
Membership服务提供了成员服务,往往自己也会写很多的数据库,其中需要和成员关联,完全用Profile不现实,这里就涉及到UserID的问题
我采取的方法是单独建立一个表,建立MemberShip提供的UserID和自己的数据库之间的一对一关系
可能你觉得维护这个表是个很麻烦的事情,其实维护这个表并不麻烦,我们要做的就是在新建和删除用户的时候自动在这张表里加入个删除相应的数据。
我在这个表里面加入了三个字段,UserID存放Guid类型的MemberShip中的ID,uid存放自动增加的uid,为方便起见,也加入了userName字段存放用户名,事实上完全还可以在这个数据表里面加入其他用户信息,不过数据库概论告诉我们,这个一对一的表里面不该放太多的东西
我们新建一个类,继承默认的SqlMembershipProvider
代码如下:
public class UserMemberShipProvider : SqlMembershipProvider
其中DbHelper是操作数据库的DAL类,就是做一些基本的添加删除工作
这样在自己的数据库中就可以完全按照uid进行处理,不用管任何和那个Guid相关的问题了。
对了 看看web.config里面怎么写的
<membership>
<providers>
<remove name="AspNetSqlMembershipProvider"/>
<add name="AspNetSqlMembershipProvider"
type="ABSC.MemberShipProvider.UserMemberShipProvider"
connectionStringName="LocalSqlServer"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="1"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
/>
</providers>
</membership>
相关文章推荐
- 使用Membership服务与自己写的用户数据库关联
- asp.net2.0 Membership 中使用自己的数据库
- 利用已有数据库配合ASP.NET2.0内置用户 角色 授权系统打造自己的权限分配程序(1)
- 利用已有数据库配合ASP.NET2.0内置用户 角色 授权系统打造自己的权限分配程序(2)
- DQL添加逻辑服务使用自己的数据库(包含建立元数据)
- 使用Vitamio打造自己的Android万能播放器(11)—— 本地扫描后台服务
- ASP.NET5 REST API使用示例——基于云平台+云服务打造自己的在线翻译工具
- 自己用户jquery加 web服务做的一个小例子
- [重要]使用Vitamio打造自己的Android万能播放器(10)—— 本地播放 (缩略图、视频信息、视频扫描服务)
- 使用MD5对存放在数据库中用户密码进行保护
- 在Java中使用Hibernate,使用不同数据库服务名
- ArcSDE地理数据库跨用户以及跨数据库表关联研究
- 使用Oracle SQLDeveloper连接数据库并创建用户
- 详解如何获取客户端使用WCF服务的用户数,通过WCF取在线用户数量的方法
- 百度编辑器使用 嵌入ci (可灵活运用,建立数据库,写入并读出,实现用户自定义网页页面内容)
- 编写OracleMembershipProvider,让SharePoint2007使用Oralce中的用户数据实现Form验证。 (第五天)
- 如何断开数据库中正在使用的所有用户
- 如何将自己代码的核心部分对用户“隐藏”起来,使用导入静态库。
- 限制sftp用户只能在自己文件夹下活动,不可进行ssh链接和使用22端口
- 【转】在配置使用Membership或其他的Providers的ASP.NET2.0时一定要设置applicationName属性。