Scenario:
Dont ask me why but I was asked to create sharepoint group programatically. Also on top of it attach that group to a particular Roledefinition (i.e "Members" )
Solution:
Object Model , my favorite
Code:
private void AddGroup(SPWeb web, string GroupName, SPUser groupOwner, string GroupDescription, string roleDefinitionName) { SPGroup oGroup = GetSiteGroup(web, GroupName); if (oGroup == null) { web.SiteGroups.Add(GroupName, groupOwner, null, GroupDescription); oGroup = GetSiteGroup(web, GroupName); } // Create the role assignment object SPRoleAssignment oRoleAssignment = new SPRoleAssignment(oGroup); // Add the role definition to the role assignemnt. // This will assign the specific permission to the security principal for this role assignemnt. oRoleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions[roleDefinitionName)]); // Now we need to add the role assignment to the web web.RoleAssignments.Add(oRoleAssignment); // Now update the web web.Update(); } private SPGroup GetSiteGroup(SPWeb web, string name) { foreach (SPGroup group in web.SiteGroups) if (group.Name.ToLower() == name.ToLower()) return group; return null; }Article:
0 comments:
Post a Comment