1

j'ai créé plusieurs groupes en utilisant le code suivant:Ajout groupe de sécurité existant à un sous-site

   SPWeb currentSite = SPContext.Current.Web; 
       currentSite.EnsureUser(groupOwner); 
       currentSite.SiteGroups.Add(siteTitle1, currentSite.SiteUsers[groupOwner], 
       currentSite.SiteUsers[groupOwner], siteDescription1); 

Comment puis-je attribuer ces groupes à un sous-site spécifique?

+0

Lorsque vous ajoutez un groupe au niveau de la collection de sites, le groupe est ajouté automatiquement à sous-site et vice versa. Signifie qu'il n'y a qu'un groupe qui est montré à tous les niveaux mais les permissions sont différentes à différents niveaux. Ainsi, un groupe ne peut pas être créé seulement au niveau d'un sous-site. Pouvez-vous s'il vous plaît dire l'exigence exacte – user270014

+0

Comment pourrais-je créer un groupe pour un sous-site seulement ?? – MXV

Répondre

1

Vous devriez obtenir un objet sous-site, comme celui-ci:

var subWeb = currentSite.Webs["MySubSite"]; 

Et puis utilisez votre code:

subWeb.EnsureUser(groupOwner); 
subWeb.SiteGroups.Add(siteTitle1, currentSite.SiteUsers[groupOwner], 
      subWeb.SiteUsers[groupOwner], siteDescription1); 
+0

Merci! Sous "MySubSite" Dois-je avoir le chemin complet du sous-site? Quelque chose comme "firstsite/secondsite/subsite"? – MXV

+0

Si vous souhaitez obtenir un site spécifique, vous devez utiliser: en utilisant (var site = new SPSite ("http: // mysite/mysubsite /")) { en utilisant (var web = site.OpenWeb()) { // votre code } } Mon code précédent obtient le sous-site du site actuel uniquement. – Aviw

+0

C'était! Je vous remercie – MXV

Questions connexes