默认情况下,Membership API使用单独的用户名字段来登录用户。我希望使用电子邮件地址来登录用户。这是一个好主意吗?
我应该如何修改登录、注册用户、忘记密码控件以支持这一点?
默认情况下,Membership API使用单独的用户名字段来登录用户。我希望使用电子邮件地址来登录用户。这是一个好主意吗?
我应该如何修改登录、注册用户、忘记密码控件以支持这一点?
MembershipUser currentUser = Membership.GetUser();
currentUser.Email = currentUser.UserName;
Membership.UpdateUser(currentUser);
这样一来,当您想使用会员方法时,电子邮件栏也会填写。主要缺点是Membership API不允许您更改用户名。因此,如果用户更改了其电子邮件地址,其用户名将保持为旧电子邮件地址。为了解决这个问题,您需要跳过Membership API并直接进入SQL代码。您可以在这里找到如何做。
我喜欢使用我的电子邮件地址作为登录名。这通常非常有效,因为我不必记住特定网站的登录名,而且没有人应该使用我的电子邮件地址。
但是...除了Tenaciouslmpy的答案之外,另一个缺点是您必须小心暴露这些“用户名”。您最终会创建一个名为“显示名称”的字段。这完全没问题,但请注意,这样做在长期内不会为您节省任何工作。