Tag Archives: SharePoint interneto paslaugos

Lists.asmx, GetListItems ir aplankai

Darau kai tyrimų kažkas šiandien aplink kaip SharePoint žiniatinklio paslaugos list.asmx 2010 (ir anksčiau).  Ji buvo suteikta galimybė gauti sąrašo elementus į šakninį aplanką (įskaitant poaplankius pavadinimai), Tačiau negalėjo gauti elementus ir poaplankius.  Aš padarė kai dairausi internetas ir tai yra stebėtinai įprastas klausimas.  Dar, Aš negalėjo gauti tinkamą atsakymą į paprastą klausimą, "jei aš žinau aplanką, kaip man elementus į aplanką?”  Tiesą sakant, Aš ne bandyti visi, kad sunku, nes aš norėjau pav tai vienas iš savo, o šypsena.

Kad tai nustatytumėte, Aš sukūrė tinklalapį, pavadintą "Blogų scenarijų" ir pavadintas "Pasirinktinį sąrašą su Sub katalogų" pasirinktinį sąrašą.  Aš tada sukūrė aplankus pavadintus:

  • Metų 2005
  • Metų 2006
  • Metų 2007

Aš pridėjo keletą daiktų į aplanką "metai 2006".  Tai kaip jis atrodo:

image

Mano draugas yra ne rašyti C# kodą bet o naudojant Java, Taigi SOAP vokas buvo, kas ji tikrai reikalinga.  Gauti, kad, Aš šiek tiek jQuery ir tada gaudavo smuikininkas tikrasis HTTP pokalbis.

Štai atitinkamo jQuery (Aš nukopijuoti kodą žemyn žemiau jei norite kopijuoti ir įklijuoti):

image

Jos pirmasis svarbiausia yra ir yra <queryOptions> ir <QueryOptions> mazgas.  Antrajam raktui yra tai, kad į <Aplankas> mazgas yra URL kuria klientas gali naudotis.

Gali būti kitų būdų, kaip gauti šią, bet tai dirbo gerai man naudojant jQuery.

Štai SOAP vokas planai:

<soapenv:Voko xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’>                
  <soapenv:Įstaiga>
    <GetListItems xmlns =’
http://schemas.Microsoft.com/SharePoint/SOAP/’>
      <listName>Pasirinktinį sąrašą su poaplankius</listName>
      <viewFields>  
        <ViewFields>
          <FieldRef pavadinimas = "pavadinimas’ />
          <FieldRef pavadinimas = "EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <Aplankas>
http://demoserver1/Dienoraštis Scenarijų/sąrašai/Pasirinktinis sąrašas su submeniu aplankus/metai 2006</Aplankas>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:Įstaiga>
</soapenv:Vokas>

Daug pavyzdžių ir diskusijų apie tai privertė mane manyti, kad visi man reikia buvo <QueryOptions> ir nurodykite aplanko pavadinimą.  Man, Man reikia tiek apvyniokite viduje <queryOptions> taip pat nurodyti visas URL į <Aplankas> mazgas.

Štai jQuery AJAX nustatymas:

$(dokumento).paruošta(funkcija() {
       var soapEnv =
           "<soapenv:Voko xmlns:soapenv =’http://schemas.xmlsoap.org/SOAP/Envelope/’> \
               <soapenv:Įstaiga> \
                    <GetListItems xmlns =’http://schemas.Microsoft.com/SharePoint/SOAP/’> \
                       <listName>Pasirinktinį sąrašą su poaplankius</listName> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef pavadinimas = "pavadinimas’ /> \
                              <FieldRef pavadinimas = "EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <Aplankas>http://demoserver1/Blogging Scenarijų/sąrašai/Pasirinktinis sąrašas su submeniu aplankus/metai 2006</Aplankas> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:Įstaiga> \
           </soapenv:Vokas>";

</pabaigos>

Prenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin