Clase SPModerationInformation
Proporciona información sobre el estado de aprobación de contenido de un elemento en una lista o una biblioteca de documentos.
Jerarquía de la herencia
System.Object
Microsoft.SharePoint.SPModerationInformation
Espacio de nombres: Microsoft.SharePoint
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
Public Class SPModerationInformation
'Uso
Dim instance As SPModerationInformation
public class SPModerationInformation
Ejemplos
En el ejemplo de código siguiente se recorre en iteración todas las bibliotecas de documentos con la aprobación de contenido habilitada en cada sitio en la colección de sitios actual y muestra las direcciones URL de todos los documentos pendientes.
Nota
Para obtener información acerca de cómo usar las consultas de Language-Integrated Query (LINQ) para recuperar elementos de lista en SharePoint Foundation, consulte Managing Data with LINQ to SharePoint.
Dim siteCollection As New SPSite("https://localhost")
Dim subSites As SPWebCollection = siteCollection.AllWebs
Dim site As SPWeb
For Each site In subSites
Dim lists As SPListCollection = site.Lists
Dim list As SPList
For Each list In lists
If list.BaseType = SPBaseType.DocumentLibrary Then
Dim docLibrary As SPDocumentLibrary =
CType(list, SPDocumentLibrary)
If Not docLibrary.IsCatalog AndAlso
docLibrary.EnableModeration = True Then
Dim allItemsQuery As New SPQuery()
allItemsQuery.ViewAttributes =
"ModerationType='Moderator'"
Dim docLibItems As SPListItemCollection =
docLibrary.GetItems(allItemsQuery)
Dim docLibItem As SPListItem
For Each docLibItem In docLibItems
If docLibItem.ModerationInformation.Status =
SPModerationStatusType.Pending Then
Console.WriteLine(site.Url + "/" +
docLibItem.File.Url)
End If
Next docLibItem
End If
End If
Next list
Next site
using (SPSite oSiteCollection = new SPSite("https://localhost"))
{
SPWebCollection collWebsites = oSiteCollection.AllWebs;
foreach (SPWeb oWebsite in collWebsites)
{
SPListCollection collLists = oWebsite.Lists;
foreach (SPList oList in collLists)
{
if (oList.BaseType == SPBaseType.DocumentLibrary)
{
SPDocumentLibrary oDocLibrary = (SPDocumentLibrary)oList;
if (!oDocLibrary.IsCatalog && oDocLibrary.EnableModeration == true)
{
SPQuery oQuery = new SPQuery();
oQuery.ViewAttributes = "ModerationType='Moderator'";
SPListItemCollection collListItems = oDocLibrary.GetItems(oQuery);
foreach (SPListItem oListItem in collListItems)
{
if (oListItem.ModerationInformation.Status == SPModerationStatusType.Pending)
{
Console.WriteLine(oWebsite.Url + "/" + oListItem.File.Url);
}
}
}
}
}
oWebsite.Dispose();
}
}
Nota
Determinados objetos implementan la interfaz de IDisposable y, a continuación, se debe evitar la conservación de estos objetos en la memoria que ya no se necesitan. Para obtener información acerca de buenas prácticas de codificación, vea Disposing Objects.
Seguridad para subprocesos
Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.