加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 在sharepoint中按组获取用户

发布时间:2020-12-15 06:40:56 所属栏目:百科 来源:网络整理
导读:任何人都可以告诉我如何使用sharepoint获取某个组内的用户? 所以我有一个包含用户和组的列表.我想检索该列表中的所有用户.是否有一种区分列表项是组还是用户的方法.如果它是一个组,我需要获得该组内的所有用户. im使用c#,并尝试通过使其成为一个控制台应用
任何人都可以告诉我如何使用sharepoint获取某个组内的用户?

所以我有一个包含用户和组的列表.我想检索该列表中的所有用户.是否有一种区分列表项是组还是用户的方法.如果它是一个组,我需要获得该组内的所有用户.

im使用c#,并尝试通过使其成为一个控制台应用程序来做这些事情.

im新的sharepoint和im真的跳进了这个游泳池的深层,任何帮助将是高度赞赏.

干杯..

解决方法

您需要知道的第一件事是,当您有一个包含用户/组字段的列表时,您必须了解其类型.在项目值中有一个用户或组时,字段类型为SPFieldUserValue.但是,如果该字段具有多个用户/组选择,则字段类型为SPFieldUserValueCollection.
我会假设您的字段允许单个用户/组选择,并且您已经具有以下对象:
SPSite site;
SPWeb web;
SPListItem item;

现在,我们将检查一个用户/组的字段值,并检索一个用户列表,它们是哪个类型(字段的名字是“Users”).

SPFieldUserValue usersField = new SPFieldUserValue(mainWeb,item["Users"].ToString());
bool isUser = SPUtility.IsLoginValid(site,usersField.User.LoginName);
List<SPUser> users = new List<SPUser>();

if (isUser)
{
    // add a single user to the list
    users.Add(usersField.User);
}
else
{
    SPGroup group = web.Groups.GetByID(usersField.LookupId);

    foreach (SPUser user in group.Users)
    {
        // add all the group users to the list
        users.Add(user.User);
    }
}

我希望它能帮助你.

韩国社交协会,佩德罗·何塞·巴蒂斯塔

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读