2012-08-03 2 views
1

사용자가 특정 그룹 ("GroupA"라고 말하면 됨)의 일부인지 확인해야하는 코드가 있습니다.SPuser (그룹 회원 검색)

사용자 정보가 Sharepoint 변수 SPUser에 저장되어 있습니다. 이제이 사용자가 GroupA의 일부인지 확인한 다음 몇 가지 조치를 취해야합니다.

어떻게하면됩니까?

답변

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

+0

! 나는 사용자가 여기에 명시된 그룹의 일부 임에도 불구하고 1 개의 작은 문제에 직면하고 있으며, 조건이 true로 평가되지 않습니다. g.Name.Equals ("그룹 이름", StringComparison.OrdinalIgnoreCase)도 사용 해보았습니다. – user1534235

관련 문제