Lists.asmx, GetList और 'मान रिक्त होना नहीं कर सकते”

मुझे आज पता चला कि GetList() विधि में lists.asmx वेब सेवा बहुत ही सावधानी से कहा जा करने के लिए है या यह एक रहस्यमय "मान रिक्त हो सकता" अपवाद फेंक करने के लिए प्रवण है (और कि आप अतीत भी बदतर जेनेरिक त्रुटि संदेश प्राप्त कर सकते हैं संभालने है, "प्रकार की अपवाद ' Microsoft.SharePoint.SoapServer.SoapServerException’ फेंक दिया गया था.")  विशेष रूप से, मैंने पाया है कि आप GetList पद्धति पर उपसर्ग की किसी भी तरह प्रदान नहीं कर सकते।  निम्नलिखित jQuery स्निपेट दिखाता है बात:

image

यदि आप कि क्या, वेब सेवा का जवाब है "मान के अनुसार यह बातिल हो नहीं कर सकता के साथ" सारंगी बजानेवाला-HTTP प्रतिलेख प्रदान की:

<?xml संस्करण "1.0 =" एन्कोडिंग = "utf-8"?>
  <साबुन:लिफ़ाफ़ा
     xmlns:साबुन ="
http://schemas.xmlsoap.org/soap/envelope/"    
     xmlns:xsi = "
http://www.w3.org/ 2001/xml स्कीमा-उदाहरण
     xmlns:xsd ="
http://www.w3.org/ 2001/xml स्कीमा">

  <साबुन:शरीर>
    <साबुन:गलती>
      <faultcode>साबुन:सर्वर</faultcode>
      <faultstring>
        अपवाद प्रकार का ' Microsoft.SharePoint.SoapServer.SoapServerException’ फेंका था.
      </faultstring>
      <विस्तार>
        <errorstring xmlns ="
http://schemas.microsoft.com/sharepoint/soap/">
मान रिक्त नहीं हो सकता.
        </errorstring>
      </विस्तार>
    </साबुन:गलती>
  </साबुन:शरीर>
</साबुन:लिफ़ाफ़ा>

बेशक, तुम्हें शायद कि "s0" उपसर्ग अपने दम पर जोड़ नहीं होता, लेकिन कुछ उपकरण यह करने के लिए प्रवण हैं (ग्रहण की तरह).

यह सब अधिक भ्रामक है / निराशा होती है क्योंकि अन्य विधियों को उपसर्ग सहन।  उदाहरण के लिए, इस GetListCollection विधि यदि यह prefixed किया गया है मन नहीं करता, "xyzzy" की तरह भी बकवास उपसर्गों के साथ:

image

यह "मूल्य नहीं हो सकता नल है" तो उम्मीद है कि यह मदद मिलेगी किसी को बाहर भविष्य में lists.asmx के साथ काफी आम लगता है.

</अंत>

मेरे ब्लॉग के लिए सदस्यता लें.

मेरे चहचहाना पर का पालन करें http://www.twitter.com/pagalvin

पर एक विचार "Lists.asmx, GetList और 'मान रिक्त होना नहीं कर सकते”

करने के लिए एक उत्तर दें छोड़ दो PVA उत्तर रद्द करे

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. अपेक्षित स्थानों को रेखांकित कर दिया गया है *