Lists.asmx, GetListItems మరియు ఫోల్డర్లు

నేను SharePoint భాగంగా అందించిన list.asmx వెబ్ సేవ చుట్టూ నేడు ఎవరైనా కోసం కొన్ని పరిశోధన చేస్తున్న 2010 (అంతకు ముందువి).  ఆమె రూట్ ఫోల్డర్ లో జాబితా అంశాలను పొందడానికి చేయగలిగాడు (ఉప ఫోల్డర్లను పేర్లు సహా), కానీ ఉప అంశాలు పొందుటకు కాలేదు.  నేను కొన్ని ఇంటర్నెట్ల చుట్టూ చూస్తున్న లేదు మరియు అది ఒక ఆశ్చర్యకరంగా సాధారణ ప్రశ్న.  ఇప్పటికీ, నేను సాధారణ ప్రశ్నకు ఒక మంచి సమాధానం పొందుటకు కాలేదు, "నేను ఫోల్డర్ తెలిస్తే, ఎలా నేను ఫోల్డర్ ఐటెమ్లను పొందుటకు లేదు?"  నిజాయితీ ఉండాలి, నేను కాసేపు నా స్వంతంగా ఒక అవ్ట్ దొరుకుతుందని కోరుకున్నాను నుండి నేను ఆ హార్డ్ ప్రయత్నించండి లేదు స్మైల్.

ఈ ఏర్పాటు, నేను "బ్లాగింగ్ విధానాలపై" మరియు "ఉప ఫోల్డర్లు తో కస్టమ్ జాబితా" అనే కస్టమ్ జాబితా అనే సైట్ రూపొందించినవారు.  నేను అనే ఫోల్డర్ రూపొందించినవారు:

  • సంవత్సరము 2005
  • సంవత్సరము 2006
  • సంవత్సరము 2007

నేను ఫోల్డర్ "ఇయర్ 2006" కొన్ని అంశాలు జోడించబడ్డాయి.  ఇది కనిపిస్తుంది ఏమిటి:

image

నా స్నేహితుడు సి # కోడ్ వ్రాయడం కానీ జావా ఉపయోగించని, కాబట్టి SOAP కవచ ఆమె నిజంగా అవసరం ఏమిటి.  ఆ పొందుటకు, నేను j క్వెరీ ఒక బిట్ రాశాడు మరియు తర్వాత నిజమైన HTTP సంభాషణ పొందుటకు FIDDLER ఉపయోగిస్తారు.

సంబంధించిన j క్వెరీ వార్తలు (మీరు అతికించండి / కాపీ అనుకుంటే నేను క్రింద కోడ్ డౌన్ కాపీ):

image

వారు మొదటి కీ ఒక చేర్చడాన్ని ఉంది <queryOptions> మరియు <QueryOptions> నోడ్.  రెండవ కీ అని <ఫోల్డర్> నోడ్ ఇది క్లయింట్ యాక్సెస్ కలిగిన ఒక URL ఉంది.

ఈ పొందుటకు ఇతర మార్గాలు ఉండవచ్చు, j క్వెరీ ఉపయోగించి కానీ ఈ నాకు బాగా పని.

ఇక్కడ పైన కోసం SOAP కవచ ఉంది:

<soapenv:ఎన్వలప్ xmlns:soapenv =’http://schemas.xmlsoap.org / సబ్బు / కవచ /’>                
  <soapenv:శరీరం>
    <GetListItems xmlns =’
http://schemas.microsoft.com / SharePoint / సబ్బు /’>
      <రాలునట్టి>సబ్ ఫోల్డర్లు అనుకూల జాబితా</రాలునట్టి>
      <viewFields>  
        <ViewFields>
          <FieldRef పేరు = 'శీర్షిక’ />
          <FieldRef పేరు = 'EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <ఫోల్డర్>
http://demoserver1/Blogging దృశ్యాలు / జాబితాలు / సబ్ ఫోల్డర్లు / ఇయర్ 2006 కస్టమ్ జాబితా</ఫోల్డర్>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:శరీరం>
</soapenv:పైకాకితము>

దీనితో ఉదాహరణలు మరియు చర్చ చాలా నాకు అవసరం అన్ని విశ్వసించడానికి దారితీసింది <QueryOptions> మరియు ఒక ఫోల్డర్ పేరు పేర్కొనండి.  నాకు, నేను రెండు చుట్టు అది లోపల అవసరం <queryOptions> అలాగే ఒక పూర్తి అర్హత ఉన్న URL తెలుపుటకు <ఫోల్డర్> కాండము నుండి ఆకు వచ్చు బోడిపే.

ఇక్కడ j క్వెరీ AJAX సెటప్ వార్తలు:

$(పత్రం).సిద్ధంగా(ఫంక్షన్() {
       soapEnv = ఉంది
           "<soapenv:ఎన్వలప్ xmlns:soapenv =’http://schemas.xmlsoap.org / సబ్బు / కవచ /’> \
               <soapenv:శరీరం> \
                    <GetListItems xmlns =’http://schemas.microsoft.com / SharePoint / సబ్బు /’> \
                       <రాలునట్టి>సబ్ ఫోల్డర్లు అనుకూల జాబితా</రాలునట్టి> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef పేరు = 'శీర్షిక’ /> \
                              <FieldRef పేరు = 'EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <ఫోల్డర్>http://demoserver1/Blogging దృశ్యాలు / జాబితాలు / సబ్ ఫోల్డర్లు / ఇయర్ 2006 కస్టమ్ జాబితా</ఫోల్డర్> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:శరీరం> \
           </soapenv:పైకాకితము>";

</చివర>

నా బ్లాగ్ సబ్స్క్రయిబ్.

వద్ద ట్విట్టర్ లో నన్ను అనుసరించండి http://www.twitter.com/pagalvin

6 "న ఆలోచనలుLists.asmx, GetListItems మరియు ఫోల్డర్లు

  1. డేనియల్

    ఎక్కువ

    I am trying to display the documents under a specific folder using a SPD 2010 DataSource GetListItems

    Once I connect to to my web service and enter the guid for the document library
    I can modify the QueryOptions and enter the following piece of CAML
    Compliance Training\CompanyX.

    Only this does not return any results – removing the QueryOptions parameter returns all the documents in the root document library….

    Am I looking at passing some sort of view parameter and include the view guid.

  2. డౌ

    ఈ పోస్ట్ కోసం ఒక సమూహం Thanks, పాల్. నేను కోల్డ్ఫ్యూజన్ cfhttp ద్వారా GetListItems తినే ప్రయత్నిస్తున్న చేసిన, మరియు కవచ కుడి పొందుటకు కాలేదు. చివరికి ఈ పోస్ట్ అంతటా వచ్చింది, మరియు మీ ఉదాహరణకు దోషపూరితంగా పని. ధన్యవాదాలు మళ్ళీ.

ఒక Reply వదిలి

మీ ఇమెయిల్ చిరునామా ప్రచురితమైన కాదు. లు గుర్తించబడతాయి *