我已经尝试过像这里这样的解决方案你如何更新 aspnetdb 成员 IsApproved 值? 但它仍然对我不起作用。isAprproved 总是为新成员传递 true。
我在这里创建一个成员:
MembershipUser member = Membership.Providers[providerAlias].CreateUser("aaa", password, email, null, null, false, null, out newStatus);
Member.ChangeUsername("aaa", email);
member.IsApproved = false;
Membership.UpdateUser(member);
但我的新成员仍然可以登录。我没有使用 CreateUserWizard,因为我遇到了很多问题。
我有自己的注册表并创建一个成员,然后自动登录他以使用输入值更新配置文件并注销。我不确定这有什么不同 - 有些帖子建议这样做,但我需要登录会员才能保存他的个人资料数据,不是吗?
另外,即使我故意为现有成员更改 isApproved :
MembershipUser user = Membership.GetUser(_currentProfile.UserName);
if (user != null)
{
user.IsApproved = false;
Membership.UpdateUser(user);
Response.Write(user.IsApproved.ToString());
}
它也不会改变并且始终保持真实。
如何更新 isApproved 属性,以便我的会员在其注册得到管理员验证之前无法登录?
我正在使用 Umbraco 6。
谢谢