Ich habe ein "Webpart" entwickelt, das auf einem Sharepoint-Server bereitgestellt werden muss. Ich benötige den Benutzernamen des Benutzers, der sich auf dem Sharepoint-Server im Webpart angemeldet hat.
Wie bekomme ich diesen Benutzernamen?
Hallo zusammen, ich habe die Antwort auf meine Frage bekommen. Hoffe, das wird für Sie alle funktionieren ... Fügen Sie zunächst einen Verweis auf die MicrosoftSharepoint.dll-Datei in Ihrem Webpart hinzu. Schreiben Sie dann .] mit Microsoft.SharePoint;
string username;
string sspURL = "URL where Sharepoint is deployed";
SPSite site = new SPSite(sspURL);
SPWeb web = site.OpenWeb();
SPUser user = web.CurrentUser;
username = user.LoginName;
site.AllowUnsafeUpdates = true;
Mit freundlichen Grüßen Jigar <3
Folgendes hat für mich gearbeitet:
SPWeb theSite = SPControl.GetContextWeb(Context);
SPUser theUser = theSite.CurrentUser;
string strUserName = theUser.LoginName;
und check this out.
Sie können verwenden:
SPWeb web = SPControl.GetContextWeb(this.Context);
string userName = web.CurrentUser.LoginName;
oder
string userName = this.Context.User.Identity.Name;
Sie sollten auch this.Context.User.Identity.IsAuthenticated
überprüfen, um sicherzustellen, dass ein Benutzer angemeldet ist, bevor Sie versuchen, den Benutzernamen zu extrahieren.
SPContext.Current.Web.CurrentUser
// Vergessen Sie nicht, System.DirectoryServices.AccountManagement als Referenz hinzuzufügen und System.DirectoryServices.AccountManagement zu verwenden.
PrincipalContext insPrincipalContext = new PrincipalContext(ContextType.Domain, "MyDomain","DC=MyDomain,DC=com");
UserPrincipal insUserPrincipal = new UserPrincipal(insPrincipalContext);
insUserPrincipal.Name = "*";
PrincipalSearcher insPrincipalSearcher = new PrincipalSearcher();
insPrincipalSearcher.QueryFilter = insUserPrincipal;
PrincipalSearchResult<Principal> results = insPrincipalSearcher.FindAll();
foreach (Principal p in results)
{
Console.WriteLine(p.Name);
}
Sie können die aktuelle protokollierte Benutzer-ID auch über _spPageContextInfo property abrufen.
_spPageContextInfo.userId
Sie erhalten die ID des aktuellen Benutzers über _spPageContextInfo . Versuchen Sie, das kann Ihnen helfen.