c# 4.0 - jsom - Elimine todas las filas en la lista de sharepoint utilizando Contexto del cliente y Consulta de CAML
sharepoint csom assemblies (2)
Soy nuevo en SharePoint y quiero eliminar todas las filas en una lista de SharePoint usando la clase C # ClientContext y CAML Query .
¿Cómo puedo lograrlo de manera eficiente?
Lo solucioné El aprendizaje fue que tenemos que eliminar los elementos de la lista en orden inverso.
Enlace : http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.splistitemcollection.delete.aspx
ListItemCollection listItems = oList.GetItems(CamlQuery.CreateAllItemsQuery());
clientContext.Load(listItems,
eachItem => eachItem.Include(
item => item,
item => item["ID"]));
clientContext.ExecuteQuery();
var totalListItems = listItems.Count;
Console.WriteLine("Deletion in " + currentListName + "list:");
if (totalListItems > 0)
{
for (var counter = totalListItems - 1; counter > -1; counter--)
{
listItems[counter].DeleteObject();
clientContext.ExecuteQuery();
Console.WriteLine("Row: " + counter + " Item Deleted");
}
}
Otra solución alternativa: - Crea un elemento (dijo: deleteAllItems), en una nueva lista (dijo: configuración).
Use CAML para cambiar ese valor deleteAllItems de False a True.
luego, use el flujo de trabajo,
if deleteAllItems == True, elimine todos los elementos.
restablecer deleteAllItems en False.
Resuelve el problema de rendimiento del lado del cliente. :)