una duda de programación

04/07/2005 - 09:26 por Luismi | Informe spam
Hola a todos, he programado una funcion que elimina un top-level site y
totos los sub-sites que éste tiene, pero cuando he borrado todos los
sub-sites, me genera una excepción diciendome que no puede eliminar un
top-level site. Éste es mi código:

Public Sub RemoveSite(SiteURL as string)
Dim SiteCollection As New SharePoint.SPSite(L_PortalURL & "/" & SiteURL)
SiteCollection.AllowUnsafeUpdates = True
SiteCollection.CatchAccessDeniedException = True
Dim TmpWeb As SharePoint.SPWeb = SiteCollection.OpenWeb
Dim paco As SharePoint.SPWebCollection = TmpWeb.Webs
If Not paco Is Nothing Then
RemoveSubSites(paco)
TmpWeb.Update()
End If
TmpWeb.Delete()
TmpWeb.Close()
End Select
End Sub

Private Sub RemoveSubSites(ByVal Collec As SharePoint.SPWebCollection)
Dim x As SharePoint.SPWeb
For Each x In Collec
If Not x.Webs.Count = 0 Then
RemoveSubSites(x.Webs)
x.Delete()
x.Close()
Else
x.Delete()
x.Close()
End If
Next
End Sub

¿Álguien puede saber por qué es?
 

Leer las respuestas

#1 Luismi
04/07/2005 - 09:54 | Informe spam
Jejeje, va a resultar que era fallo mio, ya lo he arreglado...

"Luismi" wrote in message
news:
Hola a todos, he programado una funcion que elimina un top-level site


y
totos los sub-sites que éste tiene, pero cuando he borrado todos los
sub-sites, me genera una excepción diciendome que no puede eliminar un
top-level site. Éste es mi código:

Public Sub RemoveSite(SiteURL as string)
Dim SiteCollection As New SharePoint.SPSite(L_PortalURL & "/" & SiteURL)
SiteCollection.AllowUnsafeUpdates = True
SiteCollection.CatchAccessDeniedException = True
Dim TmpWeb As SharePoint.SPWeb = SiteCollection.OpenWeb
Dim paco As SharePoint.SPWebCollection = TmpWeb.Webs
If Not paco Is Nothing Then
RemoveSubSites(paco)
TmpWeb.Update()
End If
TmpWeb.Delete()
TmpWeb.Close()
End Select
End Sub

Private Sub RemoveSubSites(ByVal Collec As SharePoint.SPWebCollection)
Dim x As SharePoint.SPWeb
For Each x In Collec
If Not x.Webs.Count = 0 Then
RemoveSubSites(x.Webs)
x.Delete()
x.Close()
Else
x.Delete()
x.Close()
End If
Next
End Sub

¿Álguien puede saber por qué es?


Preguntas similares