2009-11-04 4 views
0

Lors d'une tentative d'un changement de nom SPWeb je reçois le SPException suivant:Sharepoint SPWeb renommer - Exception SPException - La validation de sécurité pour cette page est invalide

Exception SPException - The security validation for this page is invalid. Click Back in your Web browser, refresh the page, and try your operation again. - Failed to create workgroup registration entry 

Toute idée de ce que pourraient être les problèmes ici? Voici le code correspondant:

SPSecurity.RunWithElevatedPrivileges(() => 
     { 
      using (SPWeb thisWeb = site.OpenWeb(webUrl)) 
      { 
       thisWeb.Title = newName; 
       thisWeb.Update(); 
      } 
      }); 

Répondre

2

1) Set SPWeb.AllowUnsafeUpdates = true
2) Vous devrez peut-être valider le FormDigest avec ValidateFormDigest

SPSecurity.RunWithElevatedPrivileges(() => 
{ 
    using (SPWeb thisWeb = site.OpenWeb(webUrl)) 
    { 
     try 
     { 
      thisWeb.AllowUnsafeUpdates = true; 

      if (!thisWeb.ValidateFormDigest()) 
       throw new InvalidOperationException("Form Digest not valid"); 

      thisWeb.Title = newName; 
      thisWeb.Update(); 
     } 
     finally 
     { 
      if(thisWeb != null) 
       thisWeb.AllowUnsafeUpdates = false; 
     } 
    } 
}); 
+1

+1 Vous devez également envelopper ceci dans un essai/enfin qui définit thisWeb.AllowUnsafeUpdates = false; à la fin. –

+0

Merci, mis à jour pour inclure enfin bloquer comme suggéré –

Questions connexes