Veysel Uğur KIZMAZ

Sharepoint 2010 SPSite Sınıfı

27.09.2011Okunma Sayısı: 4346Kategori: Sharepoint 2010

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:
 
 
  1. using System;
  2.  
  3. using System.Web.UI;
  4.  
  5. using System.Web.UI.WebControls;
  6.  
  7. using System.Web.UI.WebControls.WebParts;
  8.  
  9. using System.Text;
  10.  
  11. using Microsoft.SharePoint;
  12.  
  13. namespace SPFarmSolution.WebPart_SPSite
  14.  
  15. {
  16.  
  17.     public partial class WebPart_SPSiteUserControl : UserControl
  18.  
  19.     {
  20.  
  21.         protected void Page_Load(object sender, EventArgs e)
  22.  
  23.         {
  24.  
  25.             StringBuilder sonuc = new StringBuilder();
  26.  
  27.             bool siteVarMi = SPSite.Exists(new Uri("http://localhost"));
  28.  
  29.             sonuc.Append("Site var mı mu ? : " + siteVarMi);
  30.  
  31.             if (siteVarMi)
  32.  
  33.             {
  34.  
  35.                 SPSite site = new SPSite("http://localhost");
  36.  
  37.                 sonuc.Append("Site URL : " + site.Url + "<br/>");
  38.  
  39.                 sonuc.Append("Site ID : " + site.Url + "<br/>");
  40.  
  41.                 SPWeb web = null;
  42.  
  43.                 try
  44.  
  45.                 {
  46.  
  47.                     web = site.OpenWeb();
  48.  
  49.                     sonuc.Append("Web açıldı : " + web.Title + "<br/>");
  50.  
  51.                 }
  52.  
  53.                 catch(SPException hata){}
  54.  
  55.                 SPFeatureCollection features = site.Features;
  56.  
  57.                 sonuc.Append("Feature sayısı : " + features.Count + "<br/>");
  58.  
  59.                 SPUserSolutionCollection solutions = site.Solutions;
  60.  
  61.                 sonuc.Append("Solution sayısı : " + solutions.Count + "<br/>");
  62.  
  63.                 SPSite.UsageInfo kullanimBilgi = site.Usage;
  64.  
  65.                 sonuc.Append("Toplam siteye giren sayısı : " + kullanimBilgi.Visits + "<br/>");
  66.  
  67.                 int port = site.Port;
  68.  
  69.                 sonuc.Append("Port : " + port + "<br/>");
  70.  
  71.                 string hostAdi = site.HostName;
  72.  
  73.                 sonuc.Append("Host Adı : " + hostAdi + "<br/>");
  74.  
  75.                 site.Close();
  76.  
  77.                 Label1.Text = sonuc.ToString();
  78.  
  79.             }
  80.  
  81.         }
  82.  
  83.     }
  84.  
  85. }
 
Şimdi bunu denemek için yeni bir sayfa ekleyelim.
 
Description: Description: C:\Users\Administrator\Desktop\Makale\SP2010_VisualStudio2010_Giris\SP2010_VisualStudio2010_Giris_47.png
 
 
 
Sayfa düzenleme ekranında Insert -> Web Part -> Custom -> WebPart_SPSite’ı sayfamıza ekleyelim.
 
 
Kaydedelim ve sonucunu görelim:
 
 
 
 
Veysel Uğur KIZMAZ
Bilgisayar Mühendisi
veysel@ugurkizmaz.com
www.ugurkizmaz.com