使用asp.net 2.0的CreateUserwizard控件如何向自己的数据表中添加数据

在我们的应用系统中,asp.net 2.0的用户表中的数据往往不能满足我们的需求,还需要增加更多的数据,一种可能的解决方案是使用Profile,更普遍的方案可能是CreateUserwizard中添加数据到我们自己的表中。

在结合asp.net 2.0的用户管理系统设计的保存用户额外信息的表中的主键是用户表ID的外键,你可以获取ID从Membershipuser属性 Provideruserkey. 使用Createuserwizard的Oncreateduser事件. 在这个事件中可以通过Membership类的GetUser方法获取当前创建成功的用户MembershipUser 。

 MembershipUser   user  = Membership.getuser=(MyCreateUserWizar.UserName) ;

使用Createuserwizard的UserName属性可以获得注册的用户名. 当你建立用户membershipuser对象,可以使用Provideruserkey获取用户的主键值(一个GUID值):

CreateUserWinard的OnCreatedUser事件中可以获取你要添加的额外用户信息和Provideruserkey的值插入到你自己的数据库表中。下面是一个如何使用的例子:

 

protected void CreateUserWizard1_CreatedUser( object sender, System.EventArgs e)
{

        MembershipUser user = Membership.GetUser(CreateUserWizard1.UserName);

        if (user != null)
            Throw New ApplicationException("找不到用户.");

        Guid userId = (Guid)user.ProviderUserKey;

       // 获取CreateUserWizard控件中的额外的用户注册信息

        TextBox myData = CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("TextBox1") as TextBox;

        UserInfo userinfo = new UserInfo();

        userinfo.ID = userId;

        userinfo.QQ = myData.Text;

        ……

        this.AddMyDataToMyDataSource(userinfo);
}

private void AddMyDataToMyDataSource(UserInfo myData)
{
   //添加数据到自己的数据库表中
}

园子中的Membership的相关文章:

ASP.NET 2.0 Membership

asp.net 2.0 用户管理功能结构

关于Membership的设置

(翻译)怎么在ASP.NET 2.0中使用Membership

Membership学习(四)-自定义MembershipProvider[xgluxv]

Membership学习(三)Membership Providers介绍[xgluxv]

Membership学习(二)membership入门[xgluxv]

Membership学习(一) Membership介绍[xgluxv]

membership,想说爱你不容易

你可能感兴趣的:(数据库,object,user,null,asp.net,textbox)