Tag Archives: SharePointi veebiteenuste

Lists.asmx, GetListItems ja kaustad

Ma tegin mõned uuringud keegi täna ümber osa SharePointi list.asmx veebiteenus 2010 (ja varem).  Ta suutis saada loendiüksuste root kausta (sealhulgas alamkatalooge nimed), aga ei suutnud saada punkte linnas alamkatalooge.  Ma tegin mõned vaadates selle internets ja on üllatavalt üldine küsimus.  Veel, Ma ei saanud hea vastata lihtsale küsimusele, "kui ma tean kaust, Kuidas saada üksused kausta?”  Kui aus olla, Ma ei proovi nii kõvasti, sest mõnda aega olen tahtnud näitaja see üks läbi minu oma naeratus.

Selle seadistama, Olen loonud saidi nimega "Blogging stsenaariumid" ja kohandatud loend nimega "Kohandatud loend koos Sub kaustad".  Siis ma loonud kausta nimega:

  • Aasta 2005
  • Aasta 2006
  • Aasta 2007

Lisasin mõned üksused kausta "aastal 2006".  See on, kuidas see välja näeb:

image

Mu sõber ei ole C# koodi aga pigem kasutades Java, nii oli SEEP ümbrik, mida ta tegelikult vaja.  Saada, et, Kirjutasin natuke jQuery ja saada tegelik HTTP vestlus viiuldaja harjunud.

Siin on asjakohane jQuery (I kopeeritud kood ette allpool kui soovite kopeeri/kleebi):

image

Nad esimene võti on nii a <queryOptions> ja <QueryOptions> sõlme.  Teine võti on see, et selle <Kausta> sõlm on URL, millele kliendil on juurdepääs.

Võib esineda muid võimalusi saada see, Aga see töötas hästi minu jaoks, kasutades jQuery.

Siin on SEEP eraldati eespool:

<soapenv:Ümbrik xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’>                
  <soapenv:Keha>
    <GetListItemid oleksid xmlns =’
http://schemas.microsoft.com/SharePoint/SOAP/’>
      <listName>Kohandatud loendi alamkaustadena</listName>
      <viewFields>  
        <ViewFields>
          <FieldRef nimi = "pealkiri’ />
          <FieldRef nimi ='EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <Kausta>
http://demoserver1/Blogging Stsenaariume/loendid/kohandatud loendi Sub kaustad/aasta 2006</Kausta>
        </QueryOptions>
      </queryOptions>
   
</GetListItemid oleksid>
  </soapenv:Keha>
</soapenv:Ümbrik>

Palju näiteid ja arutelu selle ümber viinud mind uskuma, et kõik, mida mul vaja oli <QueryOptions> ja määrake kausta nimi.  Minu jaoks, Mul on vaja nii murrab ta sees <queryOptions> Samuti saate määrata täielik URL on <Kausta> sõlm.

Siin on jQuery AJAX seadistamine:

$(dokumendi).valmis(funktsioon() {
       var soapEnv =
           "<soapenv:Ümbrik xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’> \
               <soapenv:Keha> \
                    <GetListItemid oleksid xmlns =’http://schemas.microsoft.com/SharePoint/SOAP/’> \
                       <listName>Kohandatud loendi alamkaustadena</listName> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef nimi = "pealkiri’ /> \
                              <FieldRef nimi ='EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <Kausta>http://demoserver1/Blogging Stsenaariume/loendid/kohandatud loendi Sub kaustad/aasta 2006</Kausta> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItemid oleksid> \
               </soapenv:Keha> \
           </soapenv:Ümbrik>";

</lõpp>

Telli minu blogi.

Järgi mind vidistama kell http://www.twitter.com/pagalvin