Pergunta

Gostaria de entender se ler dados de um SPView dá melhor tempo de resposta do que ler diretamente de um SPList.

Basicamente, recebi essa pergunta porque tenho um SPlist com quase 30 colunas, e eu sou tentando ler apenas 3 colunas no meu código.Agora descobri que no SP2013 é possível usar a propriedade SPQuery.ViewFieldsOnly para garantir que os dados das colunas selecionadas sejam buscados.Mas minha organização está atualmente usando WSS 3.0 (WSS3.0 não possui uma propriedade SPQuery.ViewFieldsOnly).Então, estou pensando em criar uma visualização para buscar dados.Minha SPList contém muitos itens e preciso preparar um relatório sobre um evento de clique de botão em uma SPWebPart.Então, como você pode entender, o tempo de resposta é importante para mim.Quero economizar o máximo de tempo de execução possível, buscando apenas os campos obrigatórios da minha SPList.

Estou analisando o seguinte exemplo de código usando SPView:

SPListItemCollection coll = web.Lists["ListName"].GetItems(web.Lists["ListName"].Views["ViewName"]);

Usando SPList:

SPListItemCollection coll = web.Lists["ListName"].GetItems(web.Lists["ListName"]);

A amostra SPView fornecerá um tempo de resposta melhor, assumindo que tenho muitas linhas de dados no SPList?ou é o mesmo?

Foi útil?

Solução

SIM, sempre consulte sua lista com CAML e atribua campos de visualização, simplesmente alternar a listitemcollection proporcionará um desempenho ruim.

Chamar uma visualização significa basicamente extrair o CAML dessa visualização e usá-lo para fazer uma consulta.Ou seja, você terá um ótimo desempenho.Abordagem recomendada.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top