如何自定义CreateUserWizard以获取UserId和UserName值?

时间:2015-04-26 01:03:48

标签: c# asp.net database profile createuserwizard

我正在使用Membership provider来处理用户注册并登录该网站。这个Membership provider是一个包的一部分:

  

安装 - 打包Microsoft.AspNet.Providers

我有两个ASPX个网页,其中一个有CreateUserWizard个控件,另一个有Login个控件。注册和日志记录工作正常。

我在web.config文件中定义了Profile属性:

<profile defaultProvider="DefaultProfileProvider">
  <properties>
    <add name="Id" type="System.Guid" />
    <add name="UserName"/>
  </properties>

我想要的是能够在注册用户时获取UserIdUserName值,并将它们分别存储到Profile.IdProfile.UserName

如何自定义CreateUserWizard来实现此目的?。

我的尝试:
在浏览器上显示CreateUserWizard时。你可以看到一个名为&#34;创建用户&#34;的按钮,所以我认为这是一个扩展的好地方,并添加代码来获取所需的值。我点击CreateUserWizard上的小箭头并选择Customize Create User Setup,但可编辑模板不包含&#34;创建用户&#34;的相应按钮。

那么实现这一目标的可行方法是什么?

1 个答案:

答案 0 :(得分:3)

在CreateUserWizard控件的事件下的aspx文件中,有一个&#34; createdUser&#34;你可以创造的事件。

在CreateUser函数的cs文件中输入:

    MembershipUser newUser = Membership.GetUser(NewUserWizard.UserName);
    Guid newUserId = (Guid)newUser.ProviderUserKey;

newUser.UserName将为您提供UserName,NewUserId将为您提供ID。那时你应该拥有你需要的东西。