Sharepoint Web Part Geliştirmeye Giriş
14/2/2008 ·
Sharepoint Microsoft’un uzun bir süreden beri varolan bir “İçerik Yönetim” sistemi. Aslında bu ifade biraz yetersiz, çünkü Sharepoint php üzerinde yazılmış benzer içerik yönetim sistemi göre büyük farklar getiriyor.
Microsoft bu sorunu aşmak için son derece akıllıca bir yöntem geliştirdi, sharepoint üzerinde çalışan bütün ufak uygulamalar “Web Part” adı verilen eklentiler halinde geliyor. Geliştirici ise bu eklentileri sayfalara ekliyor ve istediği gibi düzenliyor.
Buraya kadar herşey güzel gözüküyor, ama bir gün sistemde yeni bir ihtiyaç doğduğunda, ve bu ihtiyacı karşılayacak bir “Web Part” bulunmadığında diğer PHP uygulamalarında olduğu gibi yan uygulamalar yazılma gereksinimi ortaya çıkıyor. Bu noktada Microsoft çok akıllıca bir çözüm bulmuş ve Sharepoint üzerinde kendi “Web Part”’larınızı geliştirme olanağı sunmuş.
İnternet üzerinde Web Part geliştirme ile ilgili malesef çok makale yok, olanlar da daha çok teorik düzeyde kalıyor. Bundan dolayı bu makalede, basit bir Web Part nasıl geliştirilir onu anlatacağım.
Web Part geliştirmek için önümüzde iki seçenek var, birincisi Sharepoint kurulu bir server üzerinde geliştirme yapmak, ikincisi ise http://www.microsoft.com/downloads/details.aspx?FamilyId=05E0DD12-8394-402B-8936-A07FE8AFAFFD&displaylang=en adresinden Windows Sharepoint Services’ ı indirip bilgisayarınızaa kurmak. Benim tavsiyem geliştirme kolaylığı açısından birinci yolu takip etmeniz.
Üzerinde Sharepoint kurulu bir server kullandığınızı varsayıyorum, kurulum yaptıktan sonra Visual Studio içinde yeni bir proje eklemek istediğimizde karşımıza “Web Part” seçeneği de çıkıyor, projeyi yarattığımızda karşımıza aşağıdaki kod ekranı çıkıyor.
using System;
using System.Runtime.InteropServices;
using System.Web.UI;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Serialization;
using Microsoft.SharePoint.WebControls;
using Microsoft.SharePoint.WebPartPages;
namespace WPTEST
{
[Guid("997e1909-9850-4eff-b7f5-f99382c23f0d")]
public class WPTEST : System.Web.UI.WebControls.WebParts.WebPart
{
public WPTEST()
{
this.ExportMode = WebPartExportMode.All;
}
protected override void Render(HtmlTextWriter writer)
{
// TODO: add custom rendering code here.
// writer.Write("Output HTML");
}
}
}
Görüldüğü gibi sadece bir Constructor ve bir Override edilmiş bir Render metodundan başka bir fonksiyona sahip olmayan bir sınıfla karşı karşıyayız. Code-Behind dosyası burada ama Designer nerede diyorsanız, sizi kötü bir süpriz bekliyor, bir designer yok; bu yüzden arayüz işlemlerinin hepsini de Code-Behind’dan halletmek gerekiyor.
Şimdi Render metodumuza şu ifadeyi yazalım:
protected override void Render(HtmlTextWriter writer)
{
writer.Write("test:Bu bir başlıktır'");
}
Şimdi Project menüsünden Properties'i seçelim. Gelen ekranda DEBUG'ı seçelim. Burada Start Browser URL içine makinamızda çalışır durumda bulunan bir Sharepoint uygulamasının adresini yazalım, örneğin "http://sharepoint:33456". Şimdi F5'e bastığımız anda projemiz build edilecek ve belirttiğimiz Sharepoint uygulamasının içine Web Part olarak eklenecek. Sayfaya yeni bir Web Part eklemek istediğimizde, listede bu Web Part'ın da yer aldığını göreceksiniz.
Şimdi gelelim ufak bir ipucuna; Sharepoint'de test makinalarınızda geliştirdiğiniz web part'ları uygulama makinanıza atmak eskiden çok can sıkıcı bir iş idi. Microsoft bu soruna da çözüm bulmuş durumda, uygulama sunucunuza atmak sitediğiniz web part klasörünü taşıyın ve daha sonra komut isteminden bu klasörün içinde ...debugin klasörüne gidin.
"setup.bat install weburl http://extranet.sirketim.com" komutunu çalıştırdığınızda web part otomatik olarak uygulama sisteminize de eklenmiş olur. Buradaki "http://" ibaresinden sonra gelen kısım sizin Sharepoint uygulamanızın adresidir.
Bu makalede Sharepoint Web Part geliştirme konusuna basit bir giriş yaptık, bundan sonraki makalede gerçek bir Web Part nasıl geliştirilir bunu ele alacağız.
0 yorum yazılmıştır