我正在使用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>
我想要的是能够在注册用户时获取UserId
和UserName
值,并将它们分别存储到Profile.Id
和Profile.UserName
。
如何自定义CreateUserWizard
来实现此目的?。
我的尝试:
在浏览器上显示CreateUserWizard
时。你可以看到一个名为&#34;创建用户&#34;的按钮,所以我认为这是一个扩展的好地方,并添加代码来获取所需的值。我点击CreateUserWizard
上的小箭头并选择Customize Create User Setup
,但可编辑模板不包含&#34;创建用户&#34;的相应按钮。
那么实现这一目标的可行方法是什么?
答案 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。那时你应该拥有你需要的东西。