查看User Profile的名称和显示名称

在开发管理User Profile的Web Part时,需要读取和写入User Profile的属性值,但是我们往往都只知道某一属性的“显示名称”,如果要知道该属性的“名称”的话,往往还需要去管理中心点击属性的编辑按钮进去看,实在是很不方便,那么能有其他方便的方法查看到User Profile中属性的名称吗?其实只需要一段很短的代码,具体如下:

首先这段代码需要用到3个DLL,分别是Microsoft.SharePoint.dll; Microsoft.Office.Server.UserProfiles.dll; Microsoft.Office.Server.dll;然后在代码中将其引用:

1 using Microsoft.SharePoint;
2 using Microsoft.Office.Server.UserProfiles;
3 using Microsoft.Office.Server;

主要代码如下:

 1 using (SPSite mySite = new SPSite("http://yourServerName/"))
2 {
3 SPServiceContext context = SPServiceContext.GetContext(mySite);
4 ProfileSubtypeManager psm = ProfileSubtypeManager.Get(context);
5 ProfileSubtype ps = psm.GetProfileSubtype(ProfileSubtypeManager.GetDefaultProfileName(ProfileType.User));
6 ProfileSubtypePropertyManager pspm = ps.Properties;
7 foreach (ProfileSubtypeProperty pro in pspm.PropertiesWithSection)
8 {
9 Console.WriteLine(pro.Name + "\t" + pro.DisplayName);
10 }
11 Console.ReadLine();
12 }

然后就可以看到所有的属性的名称和对应的显示名称了:

当然也可以将其写入一个文本文档,更加方便查看:

 1 using (SPSite mySite = new SPSite("http://yourServerName/"))
2 {
3 SPServiceContext context = SPServiceContext.GetContext(mySite);
4 ProfileSubtypeManager psm = ProfileSubtypeManager.Get(context);
5 ProfileSubtype ps = psm.GetProfileSubtype(ProfileSubtypeManager.GetDefaultProfileName(ProfileType.User));
6 ProfileSubtypePropertyManager pspm = ps.Properties;
7 StreamWriter sw = File.CreateText(@"C:\userprofile.txt");
8 foreach (ProfileSubtypeProperty pro in pspm.PropertiesWithSection)
9 {
10 sw.WriteLine(pro.Name + "\t" + pro.DisplayName);
11 }
12 sw.Close();
13 }

现在我将所有的属性的名称和显示名称对应关系粘贴出来,供参考:

名称显示名称
SPS-Section-BasicInfo基本信息
UserProfile_GUIDId
SIDSID
ADGuidActive Directory ID
AccountName帐户名
FirstName名字
SPS-PhoneticFirstName拼音名
LastName姓氏
SPS-PhoneticLastName拼音姓
PreferredName名称
SPS-PhoneticDisplayName拼音显示姓名
WorkPhone单位电话
Department部门
Title职务
SPS-JobTitle职务
Manager经理
AboutMe描述
PersonalSpace个人网站
PictureURL图片
UserName用户名
QuickLinks快速链接
WebSite网站
PublicSiteRedirect公共网站重定向
SPS-DataSource数据源
SPS-MemberOf隶属于
SPS-Dotted-line非直属经理
SPS-Peers同级
SPS-Responsibility专业领域
SPS-SipAddressSIP 地址
SPS-MySiteUpgrade我的网站升级
SPS-DontSuggestList“不建议”列表
SPS-ProxyAddresses代理服务器地址
SPS-HireDate雇用日期
SPS-DisplayOrder显示顺序
SPS-ClaimID声明用户标识符
SPS-ClaimProviderID声明提供程序标识符
SPS-ClaimProviderType声明提供程序类型
SPS-LastColleagueAdded上一个添加的同事
SPS-OWAUrlOutlook Web Access URL
SPS-SavedAccountName保存的帐户名称
SPS-SavedSID保存的 SID
SPS-ResourceSID资源林 SID
SPS-ResourceAccountName资源林帐户名
SPS-ObjectExists对象已存在
SPS-MasterAccountName主帐户名
SPS-DistinguishedName可分辨名称
SPS-SourceObjectDN源对象可分辨名称
SPS-LastKeywordAdded最新添加的关键字
SPS-Section-ContactInfo联系人信息
WorkEmail工作电子邮件
CellPhone移动电话
Fax传真
HomePhone住宅电话
Office办公室
SPS-Location办公地点
SPS-TimeZone时区
Assistant助手
SPS-Section-Details详细信息
SPS-PastProjects过去参与的项目
SPS-Skills技能
SPS-School学校
SPS-Birthday生日
SPS-StatusNotes状态消息
SPS-Section-Delegation委托
SPS-Section-Preferences新闻源设置
SPS-Interests兴趣
SPS-EmailOptin电子邮件通知
SPS-Section-CustomProperties自定义属性

转载于:https://www.cnblogs.com/leolis/archive/2011/12/05/2277126.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值