Sharepoint:查明当前用户是否属于指定组

时间:2009-09-04 16:25:47

标签: sharepoint

如果当前用户属于sharepoint网站上的某个群组,我如何以编程方式查找? 我需要它,因为我想为属于一个组的用户显示不同的内容。

4 个答案:

答案 0 :(得分:11)

我偶然发现了你的帖子,因为我有(恕我直言)完全相同的问题,但回复看起来似乎不相符。所以我继续搜索并找到http://www.eggheadcafe.com/conversation.aspx?messageid=30460140&threadid=30420861

SPWeb site = SPContext.Current.Web;
SPGroup managerGroup = site.Groups["SP_Project_Manager"];
bool isManager = site.IsCurrentUserMemberOfGroup(managerGroup);

截至2013年,根据s654m的评论,签名似乎已经改变:

bool isManager = site.IsCurrentUserMemberOfGroup(managerGroup.ID);

答案 1 :(得分:3)

ASP.NET论坛中的这个code sample pos可能有帮助。

您可以使用的方法

/// <summary>
/// This private method get users by selected SPGroup object.
/// </summary>
/// <param name="group">SPGroup object</param>

private void UsersList(SPGroup group)
{
           foreach(SPUser singleUser in group.Users)
           {
                       foreach(SPRole singleRole in singleUser.Roles)
                       {
                                   _usersListCollection.Add(new UserListCollection(
                                   singleUser.LoginName,singleRole.Name,group.ParentWeb.Title));
                       }
           }
}
祝你好运,
亨利克

答案 2 :(得分:0)

解决这类问题的一种方法是在Codeplex找到灵感。人们发布的代码质量通常非常好。

我相信你可以在这里找到解决方案:http://accesschecker.codeplex.com/

答案 3 :(得分:0)

嘿那里,我在SharePoint上工作

如果您安装了MOSS,您可以查看“受众群体”功能,这样您就可以定位不同代码的人。