magnify
Home Microsoft SharePoint Web Servislerini Kullanarak Sharepoint Listeleri ile Calısmak
formats

Web Servislerini Kullanarak Sharepoint Listeleri ile Calısmak

Sharepoint amacı ve yapısı itibariyle bir veritabanı gibi çalışır. Çünkü kurumsal veya topluluk amacınız ne olursa olsun Sharepoint’i kullanım amaçlarınızdan bir tanesi de içerikleri yönetmektir. İçerik yönetimi diyoruz farkındaysanız “Doküman Yönetimi” değil. Çünkü “İçerik Yönetimi” tabiri ile sadece doküman olmayan ve saklamayı hedeflediğimiz liste türündeki verileride Sharepoint içerisinde saklıyor ve yönetiyoruz. Örneğin şirketinizin kütüphanesinde yer alan kitap ve dergileri Sharepoint siteniz aracılığı ile paylaştığınızı varsayarsak burada sakladığınız şey bir doküman değil kitapların Yazar, Sayfa Sayısı, ISBN Numarası, Yayınevi gibi profil bilgileridir.

Sharepoint’in bilgileri saklayan bir yapıda olduğunu söylediğimize göre bu bilgilere Sharepoint içerisinde yarattığımız web partlar veya Sharepoint dışındaki uygulamalarımızdan da erişebilmeyi isteriz. Aynı örnekten devam edecek olursak şirket kütüphanesinde yer alan kitapların profil bilgilerini Sharepoint sitemiz aracılığı ile saklıyoruz ve aynı zamanda bu bilgilere yazdığımız bir Windows veya Web uygulamasından da erişmek istiyoruz. Tıpkı bir veritabanından bu bilgileri okur gibi. Bu işlem için iki temel yöntem kullanabiliriz.

  • Sharepoint Object modeli aracılığı ile ilgili uygulamaya bağlanıp Microsoft.Sharepoint.dll içerisindeki metodlar ve sınıflarla bu veriye erişmek
  • Sharepoint uygulamamızın sunduğu ve ISAPI klasörü içerisinde yer alan Sharepoint web servisleri yardımıyla bu veriye erişmek

Biz burada Web Servisleri aracılığı ile veriye erişmeye ve verileri listelemeye çalışacağız. Bu işlem için öncelikle Sharepoint sitemiz içerisinde bir liste yaratıyoruz ve bu listeyede özel kolonlar ekleyip yukarıda bahsettiğimiz yazar, yayınevi, sayfa sayısı gibi bilgileri ekliyoruz. Listeyi oluşturalım ve okuyabileceğimiz birkaç test verisini ekleyelim.

image001

Şimdi bu verileri okuyacağımız bir Windows uygulaması yaratalım kendimize Visual Studio içerisinden.

image002

Formumuzunda tasarımı tamamlandıktan sonra referans olarak Sharepoint kurulumu ile beraber gelen web servislerinden lists.asmx’i ekliyoruz. Sharepoint web servisleri üzerinde çalışılan siteye göre instance üretir bu nedenle biz ana sayfa üzerindeki lists.asmx’e bağlantı kuracağız ancak sonra kod içerisinde web servis URL’ini manipüle edeceğiz.

image003

Şimdi kod kısmında root site olarak verdiğimiz bu URL’i “Test” sitesine göre değiştireceğiz. Sharepoint üzerinde web servisleri ile işlem yaparken unutmamanız gereken bazı noktalar var:

  • Web servislerinizi adresi http://<siteKoleksiyonuAdi>/<siteAdi>/_vti_bin/<servisAdi>.asmx olacak şekilde kullanmalısınız.
  • Web servislerini referans olarak eklerken site koleksiyonunun adresine göre eklemeli ve sonra kod içerisinde sitenize göre URL’i değiştirmelisiniz.
  • Web servisi ile bilgi çekme veya yazma işlemi yaparken web servisine kod üzerinden yetkili bir kullanıcının credential bilgilerini göndermelisiniz.
  • Web servisleri aracılığı ile bilgi okurken alan isimleri ve batch olan herşeyi XML olarak göndermelisiniz.

image004

Kodumuzu çalıştırdığımızda oluşturduğumuz “viewFields” alanı web servis metodumuza gönderilecek ve sadece bu listede verdiğimiz alanlara ait bilgiler XML olarak geri dönecek. Ardından XQuery ile belirttiğimiz

listItems.SelectNodes(“//*[local-name()=’row’]”)

komutu ile “row” cinsindeki tüm satırları okuyoruz ve datatable a ekliyoruz.

image005

Evren AYAN
WSS Architecture MVP, ISPA Regional Evangelist

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
Web Servislerini Kullanarak Sharepoint Listeleri ile Calısmak için yorumlar kapalı  comments 
© Hakan UZUNER - MCT- MVP - RD
credit