根据用户名获取用户的电子邮件

时间:2011-02-22 13:38:12

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

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

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

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

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

1 个答案:

答案 0 :(得分:8)

您可以使用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。