SharePoint 2007 - Query paginate

Quando si eseguono delle query sulle document library di SharePoint, esiste la possibilità di incorrere in un errore piuttosto infido anche dopo molto tempo che il nostro applicativo si trova in produzione. Magari perché quel particolare folder contiene ora più elementi di quanto avevamo previsto o magari perché l’amministratore del sito ha ridotto il limite degli items visualizzabili per quella particolare vista, la nostra query da ora un risultato su più pagine ed il nostro codice non funziona più :-(

Per ovviare a tale situazione è sempre buona norma verificare la proprietà ListItemCollectionPosition ed effettuare un loop finché non ci ritorna il valore NULL.

 

SPSite site = new SPSite("http://myServer:1001/sites/mySite/Documents");

SPWeb web = site.OpenWeb();

SPList list = web.Lists["MiaLista"];

 

SPQuery query = new SPQuery(list.Views["All Items"]);

 

do

{

      SPListItemCollection results = list.GetItems(query);

 

      foreach (SPListItem listItem in results)

      {

            // .... do something

      }

 

      query.ListItemCollectionPosition = results.ListItemCollectionPosition;

} while (query.ListItemCollectionPosition != null);

 

 

Technorati Tags: ,

posted @ giovedì 23 novembre 2006 14:44

Print

Comments on this entry:

# re: SharePoint 2007 - Query paginate

Left by Omar Damiani at 24/11/2006 12:09
Gravatar
Ottimo tip.
Una cosa "rognosa" che può sfuggire in effetti...
Comments have been closed on this topic.
«aprile»
domlunmarmergiovensab
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011