Heute entdeckte ich, dass die GetList() Methode in lists.asmx Es ist anfällig für eine geheimnisvolle "Wert darf nicht null sein" Ausnahme auslösen oder Webdienst hat sehr sorgfältig aufgerufen werden (und das geht davon aus, dass Sie vorbei die schlimmer generische Fehlermeldung erhalten können, "Ausnahme des Typs ' Microsoft.SharePoint.SoapServer.SoapServerException’ ausgelöst wurde.") Speziell, Ich fand, dass Sie keine Art von Präfix auf die GetList-Methode bereitstellen können. Der folgende jQuery-Ausschnitt zeigt die:
Wenn Sie das tun, der Webdienst antwortet mit "Wert darf nicht null pro dies als sein" Fiddler-bereitgestellten HTTP-Protokoll:
<?XML Version = "1.0" Encoding = "Utf-8"?>
<Seife:Umschlag
xmlns:Seife ="http://Schemas.xmlsoap.org/SOAP/Envelope/"
xmlns:Xsi = "http://www.w3.org/2001/XMLSchema-instance”
xmlns:XSD ="http://www.w3.org/2001/XMLSchema"><Seife:Körper>
<Seife:Fehler>
<FaultCode>Seife:Server</FaultCode>
<faultString>
Ausnahme des Typs ' Microsoft.SharePoint.SoapServer.SoapServerException’ ausgelöst wurde.
</faultString>
<Detail>
<ErrorString Xmlns ="http://Schemas.Microsoft.com/SharePoint/SOAP/">
Wert darf nicht null sein..
</ErrorString>
</Detail>
</Seife:Fehler>
</Seife:Körper>
</Seife:Umschlag>
Natürlich, Sie würde nicht das Präfix "s0" wahrscheinlich auf eigene hinzufügen., aber einige Werkzeuge sind dafür anfällig (wie Eclipse).
Dies ist umso mehr verwirrend / frustrierend, da andere Methoden Präfixe tolerieren. Zum Beispiel, die GetListCollection Methode dagegen nicht, wenn es vorangestellt worden ist, auch mit Unsinn Präfixe wie "Xyzzy":
Diese "Wert darf nicht null sein" scheint ziemlich häufig mit lists.asmx so hoffentlich dies jemand in Zukunft helfen wird.
</Ende>
Folgen Sie mir auf Twitter bei http://www.twitter.com/pagalvin
Einen kleinen Kommentar
Ich denke, dass du vermisst “S0” Präfix für lisname
versuchen Sie dieses
Aufgaben