我正在使用角色提供程序,并让它通过Windows登录管理我的Intranet上的用户。 我如何使用他们的用户信息从asp.net中提取他们的电子邮件地址和其他一些用户内容?
我需要挂钩到活动目录吗?如果这是最佳选择,这将是一个很好的例子
感谢所有
答案 0 :(得分:1)
会员提供商对此负责,MembershipUser类上有一个Email属性。 (请记住,无论提供者,SQL还是AD,它都应该起作用)
答案 1 :(得分:0)
我大家好,以下是如何从Active Directory中提取任何数据点的方法。在我的代码中,我收到用户的电子邮件
SELECT mail FROM 'LDAP://DC=Domain,DC=win,DC=ml,dc=COM' WHERE samaccountname = 'userName'
System.Data.OleDb.OleDbConnection con;
System.Data.OleDb.OleDbDataAdapter da;
System.Data.OleDb.OleDbCommand cmd;
System.Data.DataTable dt = new System.Data.DataTable();
con = new System.Data.OleDb.OleDbConnection("Provider=ADsDSOObject;dsn=Active Directory Provider");
con.Open();
// Create a command object on this connection
cmd = new System.Data.OleDb.OleDbCommand(this.tbQuery.Text, con);
da = new System.Data.OleDb.OleDbDataAdapter();
da.SelectCommand = cmd;
try
{
da.Fill(dt);
this.dgResults.DataSource = dt;
}
catch (System.Data.OleDb.OleDbException exc)
{
MessageBox.Show(exc.Message);
}
con.Close();