最近,碰到一个奇怪的事情,在SharePoint里的用户,如果显示方式显示为登录名(Account)的方式,显示为空。如下图:
1.经过查找,发现是因为用户属性 User name为空造成的,如下图:
2.然后,解决问题就是把这个属性更新了,其实更新很简单,SharePoint把这些属性都存在一个列表里了,这个列表就叫做User Information List,可以通过下面的URL访问;
http://{SiteUrl}/_catalogs/users/simple.aspx
3.找到问题了,我们只需要更新一下列表就可以了,更新列表的代码附后:
using (SPSite site = new SPSite(SiteUrl)){ using (SPWeb web = site.OpenWeb(WebUrl)) { SPList list = web.SiteUserInfoList; SPListItem item = list.GetItemById(UserId); item["UserName"] = "UserName"; item.SystemUpdate(); }}
……