Tag Archives: شیئرپوائنٹ ویب سروسز

Lists.asmx, GetListItems اور پوشے

میں شیئرپوائنٹ کے ایک حصے کے طور پر فراہم کی list.asmx ویب سروس کے ارد گرد آج کسی کے لئے کچھ تحقیق کر رہا تھا 2010 (اور اسے قبل).  وہ جڑ فولڈر میں اشیاء کی فہرست حاصل کرنے کے لئے کے قابل تھا (ذیلی فولڈرز کے نام بھی شامل ہیں), لیکن ذیلی فولڈر میں موجود آئٹمز نہیں مل سکا.  میں نے کچھ internets پر کے ارد گرد دیکھ کیا اور یہ ایک حیرت کی بات عام سوال ہے.  ابھی, میں نے سادہ سا سوال ایک اچھا جواب نہیں مل سکا, "میں فولڈر علم ہو تو, میں کس طرح کے فولڈر میں اشیاء کو حاصل کروں?"  ایماندار ہونے کے لئے, میں تھوڑی دیر کے لئے یہ اپنے آپ میں ایک پتہ چاہتا تھا بعد میں وہ سب مشکل کی کوشش نہیں کی مسکراہٹ.

اس کے قائم کرنے کے لئے, میں "بلاگنگ مناظر" اور "ذیلی پوشے کے ساتھ اپنی مرضی کے مطابق کی فہرست" نامی ایک اپنی مرضی کے مطابق کی فہرست نامی ایک ویب سائٹ پیدا کیا.  میں پھر نامی فولڈر تخلیق:

  • سال 2005
  • سال 2006
  • سال 2007

میں فولڈر "سال 2006" کے لئے چند اشیاء شامل ہیں.  یہ کس طرح نظر آئے ہے:

image

میرے دوست C # کوڈ لکھنے بلکہ جاوا کا استعمال کرتے ہوئے نہیں ہے, تو سپ لفافے وہ واقعی کی ضرورت کیا تھی.  اس کے حاصل کرنے کے لئے, میں jQuery کا تھوڑا سا لکھا اور پھر اصل HTTP بات چیت حاصل کرنے کے لئے استعمال کیا جاتا fiddler.

یہاں متعلقہ jQuery ہے (آپ پیسٹ کریں / کاپی کرنا چاہتے ہیں تو میں نے مندرجہ ذیل کوڈ کاپی نیچے):

image

انہوں نے سب سے پہلے ایک اہم دونوں کو شامل کرنے کے لئے ہے <queryOptions> اور <QueryOptions> نوڈ.  دوسری چابی ہے کہ <فولڈر> نوڈ جو کلائنٹ رسائی حاصل ہے کرنے کے لئے ایک یو آر ایل ہے.

اس کو حاصل کرنے کے دوسرے طریقوں سے ہو سکتی ہے, jQuery استعمال کرتے وقت لیکن یہ میرے لئے اچھا کام کیا.

یہاں سے اوپر کے لئے سپ لفافے ہے:

<soapenv:لفافہ xmlns:soapenv =’HTTP://schemas.xmlsoap.org / صابن / لفافے /’>                
  <soapenv:جسم>
    <GetListItems xmlns =’
HTTP://schemas.microsoft.com / شیئرپوائنٹ / صابن /’>
      <listName>ذیلی پوشے کے ساتھ اپنی مرضی کے مطابق کی فہرست</listName>
      <viewFields>  
        <ViewFields>
          <FieldRef نام = 'کا عنوان’ />
          <FieldRef نام = 'EncodedAbsUrl’ />
        </ViewFields>
      </viewFields>
      <queryOptions>
        <QueryOptions>
          <فولڈر>
HTTP://demoserver1/Blogging مناظر / فہرستوں / ذیلی پوشے / سال 2006 کے ساتھ اپنی مرضی کے مطابق کی فہرست</فولڈر>
        </QueryOptions>
      </queryOptions>
   
</GetListItems>
  </soapenv:جسم>
</soapenv:لفافہ>

اس کے ارد گرد مثالیں اور مباحثہ بہت سے مجھے سب کی ضرورت تھی کہ یقین کرنے کے لئے کی قیادت کی <QueryOptions> اور ایک فولڈر کے نام کی وضاحت.  میرے لئے, مجھے دونوں لفاف اس کے اندر کرنے کی ضرورت ہے <queryOptions> کے ساتھ ساتھ کے لئے ایک مکمل طور پر تعلیم یافتہ یو آر ایل کی وضاحت <فولڈر> نوڈ.

یہاں jQuery AJAX سیٹ اپ ہے:

$(دستاویز).تیار(تقریب() {
       متغیر soapEnv =
           "<soapenv:لفافہ xmlns:soapenv =’HTTP://schemas.xmlsoap.org / صابن / لفافے /’> \
               <soapenv:جسم> \
                    <GetListItems xmlns =’HTTP://schemas.microsoft.com / شیئرپوائنٹ / صابن /’> \
                       <listName>ذیلی پوشے کے ساتھ اپنی مرضی کے مطابق کی فہرست</listName> \
                       <viewFields> \
                           <ViewFields> \
                              <FieldRef نام = 'کا عنوان’ /> \
                              <FieldRef نام = 'EncodedAbsUrl’ /> \
                          </ViewFields> \
                       </viewFields> \
                       <queryOptions> \
                         <QueryOptions> \
                           <فولڈر>http://demoserver1/Blogging مناظر / فہرستوں / ذیلی پوشے / سال 2006 کے ساتھ اپنی مرضی کے مطابق کی فہرست</فولڈر> \
                         </QueryOptions> \
                       </queryOptions> \
                   </GetListItems> \
               </soapenv:جسم> \
           </soapenv:لفافہ>";

</آخر>

اپنے بلاگ کو سبسکرائب کریں.

ٹویٹر پر مجھ پر عمل کریں http://www.twitter.com/pagalvin