SPuser查找组成员身份

时间:2012-08-03 07:27:59

标签: sharepoint spuser

我有一个代码,我必须检查用户是否属于某个组(假设“GroupA”)。

我将用户详细信息存储在Sharepoint变量SPUser中。现在我需要检查这个用户是否是GroupA的一部分,然后采取一些行动。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

来源:How to check if a user exists in a group

您可以使用以下扩展方法,如下所示:

public static bool InGroup(this SPUser User, string GroupName)
{
    return User.Groups.Cast<SPGroup>().Any(g => g.Name.ToLower() == GroupName.ToLower());
}

然后这样称呼:

bool inGroup = spuser.InGroup("GroupName");

如果你想检查当前用户,那么另一种方法可以是这样的:
来自:Check user already exist in specified SharePoint Group

SPWeb web = SPContext.Current.Web;
SPGroupCollection webGroups = web.Groups;

foreach (SPGroup group in webGroups)
{
 //Checking the group
 if (group.ContainsCurrentUser)
 {
  // perform action
 }
 else
 {
  //perform action
 }
}

更多参考资料:

Tell if user exists in SharePoint Group through web service