• sharepoint 2010 中获取system账号的真实账号


      在使用sharepoint的时候有的时候需要在后台获取当前登录用户的登录名,一般的时候使用SPContext.Current.Web.CurrentUser就可以了,但是有一个特殊的用“系统账户”,获取它的真实登录名很是问题,获取到的是“域名system”,百度了好长时间都没有找到结果,最开始的时候使用的是UserProfileManager方式获取的,但是用户配置文件同步服务老是出现问题,不得不找其他的办法。

     

    Google了一下,查到了一个获取这个用户名的方法,下面列出我使用的两种方式,不知道还有没有更靠谱的方式。

    1、HttpContext.Current.User.Identity.Name;

      这个是最简单的方法,具体有没有其他问题,还没有测试过。

    2、使用UserProfileManager.

      UserProfileManager myProfile = new UserProfileManager(context);
      UserProfile user = myProfile.GetUserProfile(per.User.sAMAccountName);

      在user对象中就可以获得我们需要的东西。

      这个就比较复杂了,需要引用一些dll

      C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions14ISAPIMicrosoft.Office.Server.UserProfiles.dll

      使用UserProfileManager获取的时候还有一些依赖,用户配置文件同步服务必须启动,这个很是问题,因为有好多时候这个服务会出现问题不能启动。

    搞定。

  • 相关阅读:
    [HAOI2008]下落的圆盘
    10.2 上午 考试
    10.1 考试 ..........
    9.29 考试
    博弈论笔记
    bzoj_1022: [SHOI2008]小约翰的游戏John
    课程总结第十五周
    团队冲刺第二阶段09
    团队冲刺第二阶段08
    对搜狗输入法的评价
  • 原文地址:https://www.cnblogs.com/qiumc/p/4180539.html
Copyright © 2020-2023  润新知