0

我创建了一个类来处理使用自定义字段创建会员用户。

我是根据这个解决方案完成的:

现在我正在尝试使用创建用户并获取配置文件数据:

if (Membership.GetUserNameByEmail(email) == null)
{
MembershipUser member = Membership.CreateUser(username, password, email);

Roles.AddUserToRole(username, "WebsiteUsers");

CCL.MemberProfile currentProfile = CCL.MemberProfile.CurrentUser;

bool exists = currentProfile != null;
Response.Write(exists.ToString());
}

currentProfile正在返回null

所以我无法将表单中的值分配给我的成员自定义属性,这些属性由类中设置的属性处理:(

我不明白如何使它工作:(

有没有人有一些想法?谢谢

4

1 回答 1

1

建议一:

确保 ProfileBase.Create 返回可以转换为“MemberProfile”的内容,否则如果不能转换,则只会返回 NULL。

建议二:

确保您正在运行的上下文具有登录用户,因此您对 Membership.GetUser() 的调用可以找到当前用户对象。

其他想法:

ProfileBase.Create 方法假定您传入的用户名是经过身份验证的用户,我不确定当用户未经过身份验证时它的行为..也许它返回 NULL?

于 2013-03-26T12:58:39.217 回答