2010-05-24 4 views
0

Je suis une exception lors de l'exécution de ce fragment de codeComment ajouter un utilisateur Active Directory groupe Sharepoint

 SPSecurity.RunWithElevatedPrivileges(delegate() 
    { 
      using (SPSite site = new SPSite(siteUrl.Trim())) 
      { 
       using (SPWeb web = site.OpenWeb()) 
       { 
        try 
        { 
         web.AllowUnsafeUpdates = true; 
         SPUser spUser = web.AllUsers[userName]; 


         if (spUser != null) 
         { 
          SPGroup spGroup = web.Groups[groupName]; 
          if (spGroup != null) 
           spGroup.AddUser(spUser); 
         } 
        } 
        catch (Exception ex) 
        { 
         this.TraceData(LogLevel.Error, "Error at function Named    [AddUserToSPGroupWidget.AddUserToGroup] . With Error Message: " + ex.ToString()); 

        } 
        finally 
        { 
         web.AllowUnsafeUpdates = false; 
        } 
       } 
      } 
      }); 

-moi guider. Merci d'avance.

Répondre

2

Je ne sais pas ce que votre exception exacte, mais vous pouvez essayer de faire des changements suivants:

  1. Au lieu de

    SPUser SPUser = web.AllUsers [USERNAME];

utilisation (il veillera à ce que l'utilisateur existe sur le web)

SPUser spUser = web.EnsureUser(userName); 
  1. Au lieu de

    SPGroup SPGroup = web.Groups [groupName ]

utilisation (collection groupes ne contient que des groupes définis sur le sous Web en cours)

SPGroup spGroup = web.SiteGroups[groupName]; 
  1. Il n'y a pas besoin de vérifier (SPGroup! = Null) parce que si le groupe n'est pas trouvé alors toujours l'exception sera levée.
Questions connexes