Bu makalemizde SPSite sınıfını inceleyelim.
SPSite nesnesi, Sharepoint’te Site Collection anlamına gelmektedir. Sharepoint Site Collection’larla ilgili işlemleri bu nesne sayesinde gerçekleştirmekteyiz. Şimdi bu sınıfın önemli method ve propertylerini inceleyelim.
Property / Method | Açıklama |
ID | Site Collection’ın ID’si |
Url | Site Collection’ın URL’i |
OpenWeb | GUID ya da URL ile site döndürür (SPWeb) |
Features | Site collectiondaki feature’ları SPFeatureCollection türünde döndürür |
Usage | UsageInfo türünde, sitenin kullanım bilgildrini döndürür |
Delete | Site collection’I siler |
Close | Yapılan düzenlemeleir iptal eder ve kodlamada siteyi kapatır |
Exists | Belirtilen Uri’de Site collection var mı yok mu control eder |
RootWeb | Root Web Site’ını döndürür |
AllWebs | SpWebCollection türünde site collectiondaki tüm siteleri döndürür |
WebApplication | Site collection ile ilişkili web application’I döndürür |
Port | Site collectionın port numarasını döndürür |
HostName | Site collection’ın olduğu sunucunun adını döndürür |
Bu işlemleri bir örnekte inceleyelim.
Yeni bir Empty Sharepoint Project oluşturalım (Farm solution) ve bir Visual Web Part ekleyelim.
Bir label sürükleyip bırakalım ve code behind’a geçelim ve şu şekilde düzenleyelim:
- using System;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.Web.UI.WebControls.WebParts;
- using System.Text;
- using Microsoft.SharePoint;
- namespace SPFarmSolution.WebPart_SPSite
- {
- public partial class WebPart_SPSiteUserControl : UserControl
- {
- protected void Page_Load(object sender, EventArgs e)
- {
- StringBuilder sonuc = new StringBuilder();
- bool siteVarMi = SPSite.Exists(new Uri("http://localhost"));
- sonuc.Append("Site var mı mu ? : " + siteVarMi);
- if (siteVarMi)
- {
- SPSite site = new SPSite("http://localhost");
- sonuc.Append("Site URL : " + site.Url + "<br/>");
- sonuc.Append("Site ID : " + site.Url + "<br/>");
- SPWeb web = null;
- try
- {
- web = site.OpenWeb();
- sonuc.Append("Web açıldı : " + web.Title + "<br/>");
- }
- catch(SPException hata){}
- SPFeatureCollection features = site.Features;
- sonuc.Append("Feature sayısı : " + features.Count + "<br/>");
- SPUserSolutionCollection solutions = site.Solutions;
- sonuc.Append("Solution sayısı : " + solutions.Count + "<br/>");
- SPSite.UsageInfo kullanimBilgi = site.Usage;
- sonuc.Append("Toplam siteye giren sayısı : " + kullanimBilgi.Visits + "<br/>");
- int port = site.Port;
- sonuc.Append("Port : " + port + "<br/>");
- string hostAdi = site.HostName;
- sonuc.Append("Host Adı : " + hostAdi + "<br/>");
- site.Close();
- Label1.Text = sonuc.ToString();
- }
- }
- }
- }
Şimdi bunu denemek için yeni bir sayfa ekleyelim.
Sayfa düzenleme ekranında Insert -> Web Part -> Custom -> WebPart_SPSite’ı sayfamıza ekleyelim.
Kaydedelim ve sonucunu görelim:
Veysel Uğur KIZMAZ