Lists.asmx, GetListItems in mape

Je bila delaš nekaj raziskav za nekoga, danes okoli list.asmx spletna storitev, ki so del SharePoint 2010 (in starejših).  Ona je uspelo priti elemente seznama na korensko mapo (vključno z imena podmape), vendar strjena lava zaslužiti elemente v podmape.  Sem, da nekaj iskal okoli na internets in je presenetljivo skupno vprašanje.  Še, Nisem mogel dobiti dober odgovor na preprosto vprašanje, "če vem mapo, Kako dobim elemente v mapi?”  Iskren, Nisem poskusil vse, da težko saj sem želela slika to ena na moje za nekaj časa Smile.

To nastaviti, Ustvarili ste stran, ki je imenovan "Blogging scenarijev" in seznam po meri, imenovano »Po meri seznam s Sub mape« .  Nato ustvarili mape, imenom:

  • Leto 2005
  • Leto 2006
  • Leto 2007

Sem dodal nekaj elementov v mapo »Leto 2006« .  To je kako izgleda:

image

Moj prijatelj ni pisanje C# kodo, vendar raje uporabo Java, tako MILO ovojnico je bil, kaj je res potreben.  Zadobiti ki, Sem napisal malo jQuery in nato uporablja Violinista priti dejanske HTTP pogovor.

Tukaj je ustreznih jQuery (I kopirati šifro navzdol spodaj Če želite Kopiraj in Prilepi):

image

So prvi ključ je vključuje tako a <queryOptions> in <QueryOptions> vozlišče.  Druga ključna je, da je <Mapo> vozlišče je URL, ki ima odjemalec dostop.

Obstajajo lahko drugih načinov, da to, vendar to delal dobro za mene, ko z uporabo jQuery.

Tukaj je MILO ovojnico za zgoraj:

<soapenv:Ovojnica xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’>                
  <soapenv:Telo>
    <GetListItems xmlns =’
http://schemas.Microsoft.com/SharePoint/SOAP/’>
      <listName>Seznam po meri s Sub mape</listName>
      <viewFields>  
        <ViewFields>
          <FieldRef ime = "naslov’ />
          <FieldRef ime = "EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <Mapo>
http://demoserver1 in Blogging Scenariji/sezname/Custom seznam s Sub mape in leto 2006</Mapo>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:Telo>
</soapenv:Ovojnica>

Veliko primerov in razpravo okoli tega pripeljala me, da verjamem, da je bilo vse rabim <QueryOptions> in določite ime mape.  Za mene, I potreba obema zavijanje it znotraj <queryOptions> kot tudi določite popolnoma kvalificirano URL za v <Mapo> vozlišče.

Tukaj je jQuery AJAX setup:

$(dokument).pripravljena(Funkcija() {
       var soapEnv =
           "<soapenv:Ovojnica xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’> \
               <soapenv:Telo> \
                    <GetListItems xmlns =’http://schemas.Microsoft.com/SharePoint/SOAP/’> \
                       <listName>Seznam po meri s Sub mape</listName> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef ime = "naslov’ /> \
                              <FieldRef ime = "EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <Mapo>http://demoserver1/Blogging Scenariji/sezname/Custom seznam s Sub mape in leto 2006</Mapo> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:Telo> \
           </soapenv:Ovojnica>";

</namen>

Naročite se na moj blog.

Sledite mi na Cvrkutati na http://www.twitter.com/pagalvin

6 misli o "Lists.asmx, GetListItems in mape

  1. Daniel

    živjo

    Sem poskušal prikazati dokumente pod določeno mapo z EPD 2010 Vir podatkov bo GetListItems

    Ko vzpostavite povezavo moje spletno storitvijo in vnesite guid za knjižnico dokumentov
    Lahko spremenite na QueryOptions in vpišite naslednji del CAML
    Skladnosti TrainingCompanyX.

    Samo to ne vračajo – odstranjevanje QueryOptions parameter vrne vse dokumente v knjižnice dokumentov koren….

    Sem sem videti v mimo nekateri nekako ogled parameter in vključuje guid za pogled.

    Odgovor
    1. Paul Galvin Prispevek avtor

      To je zelo star post/komentar tako žal za nikoli ne odgovarjam. Predvidevam, da si dolgo saj pogruntal, kako nadaljevati.

      Odgovor
  2. Bob Bolton

    v redu, izgleda, da to odmislili xml… Preprosto zamenjajte lojtra pod s škarnicami.

    #queryOptions #
    #QueryOptions #
    #ViewAttributes obseg = "RecursiveAll" / #
    #/QueryOptions #
    #/queryOptions #

    Odgovor
  3. Doug

    Najlepša hvala za to objavo, Paul. Sem bil težaven zaužiti bo GetListItems preko ColdFusion cfhttp, in ni mogel dobili kuverto pravico. Sčasoma je prišel čez to delovno mesto, in vaš primer obdelan brezhiben. Še enkrat hvala.

    Odgovor
  4. Doug

    BTW – ali veste, vira, ki navaja vse pravilno milo ovojnice? Ena za GetList elementov, objavljenih na spletnem mestu microsoft.com ne ustreza vam tukaj ste…

    Odgovor

Leave a Reply to Paul Galvin preklicati odgovor

Vaš e-naslov ne bo objavljen. Obvezna polja so označena *