Como obter uma lista filtrada por uma View no SharePoint via CSOM

 Como obter os dados do SharePoint via Client Side Object Model com Lists e View no SharePoint 2013

Problemas do CSOM para obter Views no SharePoint 2013

Hoje tive um problema interessante. Tentei obter os dados de uma lista do SharePoint através de uma aplicação desktop via CSOM (Client Side Object Model). Mas não funcionou (do not work!). Simplesmente vieram todos os dados, não executando a filtragem que eu fiz.
Para resolver isto, é necessário dar Load na lista, nas views da lista e nos ítens que serão obtidos.

Além disto, quando for pegar a Query da View, lembre-se de colocar as Tags <View>  e <Query> para funcionar.

O exemplo abaixo mostra como isto funciona.

// Obtem os dados da lista
myList = ….

// Criação da Query
CamlQuery caml = new CamlQuery();
caml.ViewXml = string.Format(“<View><Query>{0}</Query></View>”, myList.Views[0].ViewQuery),

// Obtenção dos ítens
ListItemCollection allItems = SelectedList.GetItems(caml);
SharePointClientContext.Load(SelectedList);
SharePointClientContext.Load(SelectedList.Views);
SharePointClientContext.Load(allItems);
SharePointClientContext.ExecuteQuery();

Funcionou para você?
Deixe seus comentários.


Thiago Anselme
Thiago Anselme - Gerente de TI - Arquiteto de Soluções

Ele atua/atuou como Dev Full Stack C# .NET / Angular / Kubernetes e afins. Ele possui certificações Microsoft MCTS (6x), MCPD em Web, ITIL v3 e CKAD (Kubernetes) . Thiago é apaixonado por tecnologia, entusiasta de TI desde a infância bem como amante de aprendizado contínuo.

Deixe um comentário