Précédent   Forum des professionnels en informatique > Dotnet > Général Dotnet > Développement Office System > SharePoint
SharePoint Forum d'entraide sur Microsoft Office SharePoint Server et Windows SharePoint Services.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 13/10/2008, 16h24   #1
Membre confirmé
 
Inscription : octobre 2007
Messages : 751
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 751
Points : 278
Points : 278
Par défaut [C#] Supprimer les Groupes et Users liés a un document / delete user permissions

Bonjour,


Est il possible de supprimer un utilisateur / groupe qui sont rattachés a un document uploader sur le site sharepoint en C# ?

j'ai un :
Code :
public override void ItemAdded(SPItemEventProperties properties)
peut on supprimer un utilisateur depuis un SPListItem ? ou autre...


j'aimerais aussi savoir comment rentrer en mode debug une fois le projet deployer depuis visual studio, j ai beau mettre debugger.launch() rien ne se passe... aucune instance n'est demandé

merci

Dernière modification par alavoler ; 13/10/2008 à 16h35.
alavoler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2008, 15h15   #2
Membre confirmé
 
Inscription : octobre 2007
Messages : 751
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 751
Points : 278
Points : 278
Euhh.... pti souci:



Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
   private void ChangeItemExistingRoles(SPListItem item)
        {
            foreach (SPRoleAssignment roleAssignment in item.RoleAssignments)
            { 
 
 
{...}
            ----> PB        item.RoleAssignments.RemoveById(roleAssignment.Member.ID);
 
                }
            }
            item.Update();
        }
Code :
1
2
3
4
5
System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
   at Microsoft.SharePoint.SPBaseCollection.SPEnumerator.System.Collections.IEnumerator.MoveNext()
   at OverrideRightsSharePoint.ListDefinition1ItemEventReceiver.ChangeItemExistingRoles(SPListItem item)
   at OverrideRightsSharePoint.ListDefinition1ItemEventReceiver.SetAuthorAsOnlyEditor(SPListItem item)
   at OverrideRightsSharePoint.ListDefinition1ItemEventReceiver.ItemAdded(SPItemEventProperties properties)


je ne comprend tjs pas comment supprimer en C# un utilisateur/group dans les permissions d un documents
alavoler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2008, 17h25   #3
Responsable .NET

 
Avatar de Philippe Vialatte
 
Homme Philippe Vialatte
Architecte technique
Inscription : juillet 2004
Messages : 3 016
Détails du profil
Informations personnelles :
Nom : Homme Philippe Vialatte
Âge : 33
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Architecte technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juillet 2004
Messages : 3 016
Points : 7 432
Points : 7 432
quelque chose comme ca ?

(item étant un SPItem...)

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SPSecurity.RunWithElevatedPrivileges(delegate() {
                using (SPWeb web = new SPSite(siteId).OpenWeb(webId)) {
                    web.AllowUnsafeUpdates = true;
 
                    SPListItem item = workflowProperties.Item;
                    item.BreakRoleInheritance(true);
                    web.AllowUnsafeUpdates = true;
 
                    /// clear assignments
                    do {
                        item.RoleAssignments.Remove(0);
                    } while (item.RoleAssignments.Count > 0);
 
                }
            });
__________________

Mon Blog

Présentation de Razor


The Cake is still a lie !!!
Philippe Vialatte est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2008, 20h54   #4
Rédacteur

 
Ludovic Lefort
Inscription : juin 2004
Messages : 789
Détails du profil
Informations personnelles :
Nom : Ludovic Lefort
Âge : 30

Informations forums :
Inscription : juin 2004
Messages : 789
Points : 1 667
Points : 1 667
Envoyer un message via MSN à LefortLudovic
tu n'as pas un item.RoleAssignments.RemoveAll() ?
__________________
Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

SharePoint : http://sharepoint.developpez.com
Mon site : http://lefortludovic.developpez.com
Mon blog : http://www.consultpoint.net/blog
LefortLudovic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2008, 21h13   #5
Responsable .NET

 
Avatar de Philippe Vialatte
 
Homme Philippe Vialatte
Architecte technique
Inscription : juillet 2004
Messages : 3 016
Détails du profil
Informations personnelles :
Nom : Homme Philippe Vialatte
Âge : 33
Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Architecte technique
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : juillet 2004
Messages : 3 016
Points : 7 432
Points : 7 432
euh...peut-etre ... ...

mais je crois pas ...c'est un SPRoleAssignmentCollection
__________________

Mon Blog

Présentation de Razor


The Cake is still a lie !!!
Philippe Vialatte est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/10/2008, 23h26   #6
Membre confirmé
 
Inscription : octobre 2007
Messages : 751
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 751
Points : 278
Points : 278
LefortLudovic

si j ai mais ca me met seulement un "access limited" alors que je voudrais supprimer totalement le user / group comme on le fait depuis l interface ( cocher puis action: remove user permissions)
alavoler est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/10/2008, 21h06   #7
Rédacteur

 
Ludovic Lefort
Inscription : juin 2004
Messages : 789
Détails du profil
Informations personnelles :
Nom : Ludovic Lefort
Âge : 30

Informations forums :
Inscription : juin 2004
Messages : 789
Points : 1 667
Points : 1 667
Envoyer un message via MSN à LefortLudovic
Pour le debug, tu dois attacher visual studio au process w3p.exe. Tu peux le faire depuis le menu debug de visual studio.

Normalement si tu faus un item.BreakRoleInheritance(false), ton item se retrouve sans aucun role attribué, ensuite tu ajoutes ceux qui t'intresse et tu fais un item.systeupdate().

Si tu veux plus d'info sur la modification de permission, tu peux toujours jetter sur une solution que je viens de terminer :

http://www.codeplex.com/spchangepermission

Les sources sont téléchargeable.

Ludovic,
__________________
Envie de contribuer à la rubrique SharePoint ? Contactez moi par MP !

SharePoint : http://sharepoint.developpez.com
Mon site : http://lefortludovic.developpez.com
Mon blog : http://www.consultpoint.net/blog
LefortLudovic est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 21h03.


 
 
 
 
Partenaires

Hébergement Web