Lists.asmx, GetList en "Waarde kan nie nul wees”

Ek ontdek vandag dat die GetList() metode in lists.asmx Web diens het baie versigtig genoem word, of is dit geneig om 'n geheimsinnige "Waarde te gooi kan nie nul" uitsondering (en dit is die veronderstelling wat jy kan kry verby die nog erger algemene fout boodskap, “Exception of type ‘Microsoft.SharePoint.SoapServer.SoapServerException’ gegooi is. ")  Spesifiek, Ek het gevind dat jy nie kan enige soort van voorvoegsel op die GetList metode.  Die volgende jQuery uit illustreer die punt:

image

As jy dit doen, die web diens reageer met "Waarde kan nie null" soos vervat in hierdie Fiddler-met dien verstande HTTP transkripsie:

<?die xml weergawe = "1,0" encoding = utf-8 "?>
  <seep:Envelope
     xmlns:seep ="
http://schemas.xmlsoap.org / seep / koevert /"    
     xmlns:XSi = "
http://www.w3.org/2001/XMLSchema-instance"
     xmlns:xsd ="
http://www.w3.org/2001/XMLSchema">

  <seep:Liggaam>
    <seep:Fout>
      <faultcode>seep:Server</faultcode>
      <faultstring>
        Exception of type ‘Microsoft.SharePoint.SoapServer.SoapServerException’ gegooi.
      </faultstring>
      <detail>
        <String xmlns ="
http://schemas.microsoft.com / SharePoint / seep /">
Waarde kan nie nul wees.
        </String>
      </detail>
    </seep:Fout>
  </seep:Liggaam>
</seep:Envelope>

Natuurlik, jy sal waarskynlik nie byvoeg dat "s0" voorvoegsel op jou eie, maar 'n paar tools is geneig om dit te doen (soos Eclipse).

Dit is al hoe meer verwarrend / frustreer omdat ander metodes duld voorvoegsels.  Byvoorbeeld, die GetListCollection metode nie omgee as dit is voorafgegaan, selfs met nonsens voorvoegsels soos "Xyzzy":

image

Hierdie waarde kan nie null "lyk redelik gemeen met lists.asmx so hopelik sal dit help om iemand in die toekoms.

</einde>

Skryf in op my blog.

Volg my op Twitter http://www.twitter.com/pagalvin

Een gedagte oor “Lists.asmx, GetList en "Waarde kan nie nul wees”

Laat 'n antwoord te PVA Kanseleer antwoord

Jou e-posadres sal nie gepubliseer word nie. Verpligte velde gemerk *