如何在sharepoint中获取当前用户的名字和姓氏? 我的猜测是使用UserProfile属性,但我不能让它工作。我需要一个nugetpackage吗?但我没有从我的虚拟机器上网,所以我不能这样做。
答案 0 :(得分:1)
您可以创建UserCollection或User变量。然后你可以用“”分割标题文本。这将帮助您获得名字,姓氏和MiddleName。
UserCollection managerGroupUsers = _managerGroupName.Users;
clientContext.Load(managerGroupUsers);
clientContext.ExecuteQuery();
string[] Username=null;
foreach (User u in managerGroupUsers)
{
Username= u.Title.Split(' ');
string firstName = Username[0];
string LastName = Username[1];
}
答案 1 :(得分:1)
为您的站点创建clientcontext并添加以下代码 `
Group _managerGroupName=null;
if (clientContext != null)
{
var siteColl = clientContext.Site;
var web = siteColl.RootWeb;
GroupCollection groupColl = web.SiteGroups;`
clientContext.Load(siteColl);
clientContext.Load(web);
clientContext.ExecuteQuery();
_managerGroupName = web.AssociatedOwnerGroup;
clientContext.Load(_managerGroupName);
clientContext.ExecuteQuery();
UserCollection managerGroupUsers = _managerGroupName.Users;
clientContext.Load(managerGroupUsers);
clientContext.ExecuteQuery();
string[] Username = null;
foreach (User u in managerGroupUsers)
{
Username = u.Title.Split(' ');
string firstName = Username[0];
string LastName = Username[1];
}
答案 2 :(得分:0)
从您的pastebin看起来,您正在制作一个新的服务器端Web部件。所以你不需要Microsoft.SharePoint.Client。前面的示例是使用客户端对象模型完成的,但您使用的是服务器对象模型。用以下内容替换onStart()函数的内容:
SPUser currentUser = SPContext.Current.Web.CurrentUser;
string[] nameSegments = currentUser.Name.Split(' ');
this.Controls.Add(new LiteralControl("<div>First Name: " + nameSegments[0]));
this.Controls.Add(new LiteralControl("<div>Last Name: " + nameSegments[1]));