2012-10-03 3 views
0

J'ai une liste dans laquelle une colonne est de type Personne ou Groupe. Mon exigence est la permission d'article d'un autre élément de la liste doit être changé à la valeur sélectionnée de la colonne mentionnée ci-dessus. Par exemple, j'ai deux listes A et B. La liste 'A' contient une colonne 'Accès à' qui est de type 'Personne et Groupe' (Multiple est possible). Je veux changer l'autorisation de la liste 'B' à la valeur sélectionnée dans la colonne 'Accès à' de la liste A.Modifier l'autorisation de l'élément de liste sharepoint en fonction de la valeur sélectionnée dans Type de personne ou de groupe

Guidez-moi comment faire.

+0

Qu'avez-vous essayé? Avez-vous lu la documentation de 'SPList'? Qu'est-ce qui n'est pas clair? –

+0

SPPrincipal principal = (SPPrincipal) group; SPRoleAssignment rAssignment = new 'SPRoleAssignment (groupe); Parent: parentItem.BreakRoleInheritance (true); parentItem.RoleAssignments.Add (principal); Parenthelp.Update(); 'Cela fonctionnera à partir de moi. Mais je ne sais pas comment prendre de valeur de mon objet SPFieldUserValueCollection à SPGroup. – aarpey

+0

cela a fonctionné pour moi SPGroup oGroup = web.Groups.GetByID (oFieldUserValue.LookupId); – aarpey

Répondre

1
SPWeb web = SPContext.Current.Web; 
SPGroup oGroup = web.Groups.GetByID (oFieldUserValue.LookupId); //Look up field value          
SPPrincipal principal = (SPPrincipal)oGroup; 
SPRoleAssignment roleAssignment = new SPRoleAssignment(principal);           
permFolder.Item.BreakRoleInheritance(true);           
roleAssignment.RoleDefinitionBindings.Add(web.RoleDefinitions["Contribute"]); 
permFolder.Item.RoleAssignments.Add(roleAssignment); 
permFolder.Item.Update(); 
finalItem.Update(); 
Questions connexes