在SharePoint中获取用户的NT-ID

问题描述:

在C#应用程序中获取用户的NT-ID的最简单方法是什么?我可能需要得到它只有一个用户的名字,或者可能是一个电子邮件地址。在SharePoint中获取用户的NT-ID

从SharePoint中,您可以使用SPUtility.ResolveWindowsPrincipal获得用户的Active Directory信息(包括显示姓名和电子邮件):

http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.utilities.sputility.resolvewindowsprincipal.aspx

例如:

SPPrincipalInfo pi = SPUtility.ResolveWindowsPrincipal(SPContext.Current.Site.WebApplication, "MYDOMAIN\\myusername", SPPrincipalType.All, false); 

的SharePoint的外,你想看看System.DirectoryServices命名空间。

大多数时候,你可以从当前网络得到它,例如:

string login = SPContext.Current.Web.CurrentUser.LoginName 
string mail = SPContext.Current.Web.CurrentUser.Email