Infopath 2013 经过UserProfileService读取AD用户信息

我刚刚看过什么C#文章得到当前用户使用Web服务的详细信息。
其实无需编写任何代码,能够实现彻底相同的结果。因此我在这里简单的介绍一下:
*若是你已经熟悉这个,这个篇文章能够跳过。
*此介绍是创建在InfoPath和InfoPath Forms Services之上。 工具

  1. 使用InfoPath打开工具>数据链接,并点击“添加...”添加一个新的数据链接形式。这将打开数据链接向导。
  2. 咱们但愿接有关当前用户的数据,因此选择“接收数据”,而后单击“下一步”。
  3. 选择SOAP Web服务。
  4. http://ServerName/_vti_bin/UserProfileService.asmx 键入地址,而后单击下一步。
  5. 选择“GetUserProfileByName” ,而后单击下一步。
  6. 在这个画面中你能够指定什么参数都发送的方法,咱们这里选择点击下一步
  7. 单击“下一步”,确保''被检查打开表单时自动检索数据
  8. 完成向导。

GetProfileByName方法返回一个PropertyData。你能够认为它做为一个重复表的名称和值,因此,如今你有一个数据链接,能够获得当前的用户,你可使用它的值。在这个例子中,我将在一个文本框中显示用户的名字。ui

一、添加一个文本框rest

二、双击文本框,属性,单击“FX”按键。orm

image

三、点击“插入域或组”blog

image

四、在数据源处选择GetUserProfileByName。ip

六、所有展开组下的数据域组,并选择Value字段,不要单击“肯定”!!!get

image

七、点击“筛选数据”并在第一个下拉值选择“Name”=“PreferredName”,这里的PreferredName是指全名。固然这里得根据你实际状况填写,例如:“UserProfile_GUID,AccountName,FirstName,LastName,PreferredName,WorkPhone,Office,Department”it

image

最后来张效果图:io

image

 

备注:asm

这里是获得由userprofileservice返回默认的配置文件属性的完整列表。

UserProfile_GUID
AccountName
FirstName
LastName
PreferredName
WorkPhone
Office
Department
Title
Manager
AboutMe
PersonalSpace
PictureURL
UserName
QuickLinks
WebSite
PublicSiteRedirect
SPS-Dotted-line
SPS-Peers
SPS-Responsibility
SPS-Skills
SPS-PastProjects
SPS-Interests
SPS-School
SPS-SipAddress
SPS-Birthday
SPS-MySiteUpgrade
SPS-DontSuggestList
SPS-ProxyAddresses
SPS-HireDate
SPS-LastColleagueAdded
SPS-OWAUrl
SPS-ResourceAccountName
SPS-MasterAccountName
Assistant
WorkEmail
CellPhone
Fax
HomePhone

以上字段能够在

管理中心 管理配置文件服务: User Profile Service Application -管理用户属性中得到

imageimage

相关文章
相关标签/搜索