如果当前用户属于sharepoint网站上的某个群组,我如何以编程方式查找? 我需要它,因为我想为属于一个组的用户显示不同的内容。
答案 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,您可以查看“受众群体”功能,这样您就可以定位不同代码的人。