我刚刚看过什么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。你可以认为它作为一个重复表的名称和值,所以,现在你有一个数据连接,可以得到当前的用户,你可以使用它的值。在这个例子中,我将在一个文本框中显示用户的名字。

1、添加一个文本框

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

3、点击“插入域或组”

4、在数据源处选择GetUserProfileByName。

6、全部展开组下的数据域组,并选择Value字段,不要单击“确定”!!!

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

最后来张效果图:

备注:

这里是得到由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 -管理用户属性中获得

Infopath 2013 通过UserProfileService读取AD用户信息的更多相关文章

  1. SharePoint 2013 数据库中手动更新用户信息

    在SharePoint的使用过程中,尤其是Windows认证的情况下,而且没有配置用户配置文件服务,经常会出现如果更新AD中的用户信息(包括名字.显示名.邮件等),SharePoint这边站点并不会更 ...

  2. 获取Ad用户信息

    private];                }                dt.Rows.Add(dr);            }            return dt;        ...

  3. Spring Boot教程(四十二)LDAP来管理用户信息(2)

    使用spring-data-ldap的基础用法,定义LDAP中属性与我们Java中定义实体的关系映射以及对应的Repository @Data @Entry(base = "ou=peopl ...

  4. AD帐户操作C#示例代码(一)——导入用户信息

    最近写了一个AD帐户导入的小工具(为啥写作“帐”户呢?),跟大家分享下相关代码,欢迎各位高手指教! 首先,我准备一个这样的Excel文件作为导入模版,并添加了一些测试数据. 然后,我打开Visual ...

  5. 在SharePoint中无代码开发InfoPath应用: 获取当前用户信息

    很多种不同的场景下,会需要得到当前的用户信息,例如需要根据当前用户判断组,进而控制权限. 首先InfoPath提供了一个userName方法,来实现这个目的,不过这个方法的问题是只能获得不包含域名的用 ...

  6. 无责任Windows Azure SDK .NET开发入门篇三[使用Azure AD 管理用户信息]

    三.使用Azure AD管理用户信息 在上一章我们采用OpenID的方案和Azure AD交互进行身份验证,本章节我们继续了解如何在Azure AD中创建用户,列出用户信息,修改用户信息和删除用户信息 ...

  7. SharePoint 2013 APP 开发示例 (二)获取用户信息

    SharePoint 2013 APP 开发示例 (二)获取用户信息 这个示例里,我们将演示如何获取用户信息: 1. 打开 Visual Studio 2012. 2. 创建一个新的  SharePo ...

  8. 获取和验证Windows AD域的用户信息

    1.获取windows AD域用户信息,首先需要有一个ad域管理员权限的账号,用这个账号连接ad域,获取所有域用户信息 用LdapContext,它继承自DirContext public Objec ...

  9. JMeter接口测试-循环读取库的用户信息

    前言 如何实现循环读取数据库的用户信息,并传递到下一个登录请求呢,下面我们一起来学习吧!在之前我们已经学会了利用JMeter连接数据库了,具体操作可以看我之前的随笔JMeter接口测试-JDBC测试 ...

随机推荐

  1. 消息模式Toast.makeText的几种常见用法

    Toast 是一个 View 视图,快速的为用户显示少量的信息. Toast 在应用程序上浮动显示信息给用户,它永远不会获得焦点,不影响用户的输入等操作,主要用于 一些帮助 / 提示. Toast 最 ...

  2. Vue post提交

    vue中的axios 是不直接支持post方法的,所以我们得绕一下路,我目前在登录的时候运用到了,服务器端用php,可以收到数据 let param = new URLSearchParams(); ...

  3. HTML5 添加新的标签 input属性

    <!-- 新增 有语意标签 --> <nav></nav> <!-- 导航标签 --> <seclion></seclion> ...

  4. 跨域访问问题js

    您可以通过使用JSONP形式的回调函数来加载其他网域的JSON数据 访问百度的地址解析  返回来省,地区,市 $.getJSON("http://api.map.baidu.com/clou ...

  5. 基于ESP32的uart通讯

    本文源码地址为:http://download.csdn.net/download/noticeable/9961054 ESP32上有三个UART通讯接口,设备号,从0~2,即UART0,UART1 ...

  6. 9.3AspectJ

    1.1 介绍 AspectJ是一个基于Java语言的AOP框架 Spring2.0以后新增了对AspectJ切点表达式支持 @AspectJ 是AspectJ1.5新增功能,通过JDK5注解技术,允许 ...

  7. MySQL--事务隔离级别RR和RC的异同

    在MySQL中,事务隔离级别RC(read commit)和RR(repeatable read)两种事务隔离级别基于多版本并发控制MVCC(multi-version concurrency con ...

  8. string Type

    Notes from C++ Primer Operations Operations of string support lots of operations of sequential conta ...

  9. “全栈2019”Java多线程第三十七章:如何让等待的线程无法被中断

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  10. Java实现大数相加、相乘(不使用BigInteger)

    大数相加: package algorithm; //使用BigInteger类验证 import java.math.BigInteger; public class BigAdd { public ...