Descobri hoje que o GetList() Método em lists. asmx serviço da Web tem de ser chamado com muito cuidado ou é propenso ao lançar uma misteriosa exceção "Valor não pode ser nulo" (e que está assumindo que você pode passar a mensagem de erro genérico ainda pior, "Exceção do tipo ' Microsoft.SharePoint.SoapServer.SoapServerException’ foi lançada.") Especificamente, Achei que você não pode fornecer qualquer tipo de prefixo sobre o método GetList. O seguinte trecho de jQuery ilustra o ponto:
Se você fizer isso, o serviço web responde com "Valor não pode ser nulo" como por isso Fiddler-desde transcrição HTTP:
<?XML version = "1.0" Encoding = "utf-8"?>
<sabão:Envelope
xmlns:sabão ="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance”
xmlns:XSD ="http://www.w3.org/2001/XMLSchema"><sabão:Corpo>
<sabão:Falhas>
<FaultCode>sabão:Servidor</FaultCode>
<FaultString>
Exceção do tipo ' Microsoft.SharePoint.SoapServer.SoapServerException’ foi lançada.
</FaultString>
<Detalhes>
<ErrorString xmlns ="http://schemas.Microsoft.com/SharePoint/SOAP/">
Valor não pode ser nulo.
</ErrorString>
</Detalhes>
</sabão:Falhas>
</sabão:Corpo>
</sabão:Envelope>
É claro, Você provavelmente não iria adicionar o prefixo "s0" em seu próprio país, mas algumas ferramentas são propensas a fazê-lo (como o Eclipse).
Isto é tanto mais confuso / frustrante porque outros métodos toleram prefixos. Por exemplo, o GetListCollection Método não se importa se for prefixado, mesmo com prefixos de disparates como "xyzzy":
Este "valor não pode ser nulo" parece bastante comum com lists. asmx tão esperançosamente isto ajudará alguém fora no futuro.
</fim>
Siga-me no Twitter em http://www.twitter.com/pagalvin
Um pequeno comentário
Acho que você perdeu... “S0” prefixo para lisname
Tente isso
Tarefas