【问题标题】:Get the users email based on their username根据用户名获取用户电子邮件
【发布时间】:2011-02-22 13:38:11
【问题描述】:

在 ASP.NET 4.0 中是否有任何内置方法可以根据用户名获取用户电子邮件地址?还是我必须查询必要的表?

我正在使用它来获取登录用户:

string username = HttpContext.Current.User.Identity.Name.ToString();

是否有类似的功能可以从数据库中获取当前登录用户的电子邮件?

【问题讨论】:

    标签: c# .net asp.net asp.net-membership


    【解决方案1】:

    您可以使用Membership.GetUser 方法,该方法采用用户名。这将返回一个 MembershipUser 对象,该对象具有 Email 属性。所以,是这样的:

    var user = Membership.GetUser(username);
    var email = null;
    
    if (user != null)
    {
        email = user.Email;
    }
    

    System.Web.Security 移至 .NET 4.0 Framework 中的 System.Web.ApplicationServices 程序集,因此您需要手动添加对该程序集的引用以访问成员资格。

    【讨论】:

    • 如果您需要当前用户的电子邮件,您不需要传递用户名,只需调用 Membership.GetUser()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    • 2013-09-01
    • 2017-09-19
    • 1970-01-01
    • 2012-03-17
    相关资源
    最近更新 更多