Dnes jsem zjistil, že GetList() Metoda lists.asmx Webová služba musí být volán velmi pečlivě nebo je náchylný na tajemnou "Hodnota nemůže být null" výjimka (a to za předpokladu, že se že můžete dostat přes ještě horší obecnou chybovou zprávu, "Výjimka typu ' Microsoft.SharePoint.SoapServer.SoapServerException’ byla vyvolána.") Konkrétně, Zjistil jsem, že nemůže poskytnout jakýkoliv druh předpony v metodě GetList. Následující úryvek jQuery je znázorněna:
Pokud tak učiníte, Webová služba reaguje s "Hodnota nemůže být null" jak na to houslista-Pokud protokol HTTP:
<?XML verze = "1.0" kódování = "utf-8"?>
<mýdlo:Obálka
xmlns.:mýdlo ="http://schemas.xmlsoap.org/SOAP/ENVELOPE/"
xmlns.:xsi = "http://www.w3.org/2001/XMLSchema-instance”
xmlns.:XSD ="http://www.w3.org/2001/XMLSchema"><mýdlo:Tělo>
<mýdlo:Chyba>
<faultcode>mýdlo:Server</faultcode>
<řetězcem faultString>
Výjimka typu ' Microsoft.SharePoint.SoapServer.SoapServerException’ byla vyvolána.
</řetězcem faultString>
<Podrobnosti>
<errorString xmlns ="http://schemas.microsoft.com/SharePoint/SOAP/">
Hodnota nemůže být null.
</errorString>
</Podrobnosti>
</mýdlo:Chyba>
</mýdlo:Tělo>
</mýdlo:Obálka>
Samozřejmě, pravděpodobně by přidáte tento prefix "odečtením" na vlastní, Ale některé nástroje jsou náchylné k tomu (jako Eclipse).
Je to o to víc matoucí / frustrující, protože jiné metody tolerovat předpony. Například, v GetListCollection Metoda nebude vadit, kdyby se byla předponou, i s předponami nesmysly jako "xyzzy":
Toto "hodnota nemůže být null" se zdá docela běžné s lists.asmx tak snad to pomůže někomu se v budoucnu.
</Konec>
Za mnou na Twitter na http://www.twitter.com/pagalvin
Malý komentář
Myslím, že jste vynechal “S0” Předpona pro lisname
Zkuste to
Úkoly