Ana içeriğe atla

SharePoint 2010 - SPD 2010 ile Server–Side Kod Yazmak

SharePoint Designer 2010 ile cs ya da vb kod yazamıyorum. Ne yapmam gerekiyor? Sad smileCEVAP: Aşağıdaki yazıyı okuman sana yardımcı olabilir. Smile

SharePoint 2010 ile basit web sayfalarını en rahat oluşturabileceğimiz ve master page birlikteliğini sağlayabilceğimiz en başarılı uygulama SharePoint Designer 2010 (SPD 2010) uygulamasıdır. Bu sebepten ötürüdür ki SharePoint 2010 ‘u eline alan uygulama geliştiricilerin büyük bir çoğunluğu root klasöre de erişebilme özelliği sebebi ile yeni bir sayfa v.b. eklemek istediklerinde bu uygulamayı kullanırlar. Evet kesinlikle kabul ediyorum en hızlı Asp.Net sayfa oluşturup yayınlayabileceğiniz uygulamadır. Ancak Server-Side kod yazarken yani Event yakalayıp o esnada bir işlem yaptırtmak istediğimiz zamanlarda biraz sıkıntılı bir yanı vardır. Bu yazımızda sıkıntılı yanı nasıl aşabileceğimize değinmeye çalışacağız.

 

Öncelikle SPD 2010 üzerinde SitePages kısmına gelip web sayfası oluşturuyor sonraısında ise arka planda otomatik oluşmuş kod parçasına göz atıyoruz.

 

Kod kısmının görünümü ise aşağıdaki gibidir.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"">http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"</a>>
<%@ Page Language="C#" %>
<html dir="ltr" xmlns="<a href="http://www.w3.org/1999/xhtml"">http://www.w3.org/1999/xhtml"</a> xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882">

<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<head runat="server">
<meta name="WebPartPageExpansion" content="full" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled 1</title>

<!--[if gte mso 9]>
<SharePoint:CTFieldRefs runat=server Prefix="mso:" FieldList="FileLeafRef,WikiField,_dlc_DocId,_dlc_DocIdUrl,_dlc_DocIdPersistId"><xml>
   
<mso:CustomDocumentProperties>
<mso:_dlc_DocId msdt:dt="string">WM56YMSTHXCT-11-5</mso:_dlc_DocId>
<mso:_dlc_DocIdItemGuid msdt:dt="string">e2f62402-89fd-4320-9663-f86e1492ee1a</mso:_dlc_DocIdItemGuid>
<mso:_dlc_DocIdUrl msdt:dt="string"><a href="http://turhal-pc/test/_layouts/DocIdRedir.aspx?ID=WM56YMSTHXCT-11-5">http://turhal-pc/test/_layouts/DocIdRedir.aspx?ID=WM56YMSTHXCT-11-5</a>, WM56YMSTHXCT-11-5</mso:_dlc_DocIdUrl>
</mso:CustomDocumentProperties>
</xml></SharePoint:CTFieldRefs><![endif]-->
</head>

<body>

<form id="form1" runat="server">
</form>

</body>

</html>

 

Sayfanın SharePoint şablonlarını saymazsak Asp.Net sayfası olduğunu gözlemleriz. Bu durumda eski bilgilerimizi aklımıza getirelim. Eğer ki asp.net sayfada kod dosyası kullanma şansımız yoksa aspx sayfaya server-side kod için script ekleyip metot v.b. kod parçalarını bu kısma ekliyorduk. O zaman şimdi bu yöntem ile sayfayı düzenleyip ve Page_Load olayını tetikleyen ufak bir kod parçası yazalım.

 

<script runat=”Server” >

protected void Page_Load (object sender, EventArgs e)

{

    form1.InnerHtml = “<h1> Merhabaaa </h1>”

}
</script>

 

Bu değişikliği kaydedip publish ettiğimizde source kodun içerisinde server-side kod kullanamayacağımızı açıklayan bir hata alırız. Peki bu durumda ne yapmamız gerekiyor. Aslında işlem basit. Web.config içerisinde SharePoint tarafında aspx sayfalarının içerisinde Server-Side kullanımı engelenmiştir. Bizim yapmamız gereken bunu aktif duruma getirmek olacaktır.

 

Web.Config dosyasının içerisinde configuration/SharePoint/PageParserPath bölümüne gelip aşağıdaki kod parçasını ekliyoruz.

 

<PageParserPaths>

    <PageParserPath VirtualPath=”test/SitePages/Article_Page.aspx” CompilationMode=”Always” AllowServerScript=”True” />

</PageParserPaths>

 

Evet işlem sadece bu kadar. Değişiklik sonrasında sayfanızı sorunsuzca kullanmaya başlayabilirsiniz. Ancak bu yazıyı okuduktan sonra aklınıza şu tür sorular gelebilir. Evet bu şekilde sayfayı çalıştırdık. Ancak benim 100 tane sayfam var hepsi içinde mi bu yöntemi kullanmalıyım. Hepsine bir arada seçebileceğim bir teknik yok mudur?

Cevabı ise hayır yoktur olacaktır. SharePoint 2010 genel anlamda eğer ki Server-Side kod geliştirmek istiyorsanız bunu Visual Studio içerisinde yapmanız gerekmektedir der. Bu sebeple bu kadar çok sayfanız var ise yapılması gereken VS2010 uygulamasında SharePoint Module ‘ler geliştirip web sayfalarını onun üzerind en taşımak olacaktır. Hayır bunu istemiyorum derseniz ise tek tek sayfanızın sunucu da olduğu yer bilgisi ile birlikte eklemeniz gerekecektir.

 

Umarım yararlı olmuştur.

Yorumlar

Bu blogdaki popüler yayınlar

SharePoint 2010 - Content Query for Blog Posts

I hope this post will help many of you feel comfortable with using the Content Query Web Part. In this post I will walk you through the process of creating a content query web part and configuring it to show custom field types. I will also give details on how to use XSLT to stylize and format the data being pulled. I will be using the following scenario as an example. Say that you had a site collection with a top level publishing site. This publishing site would display a the most recent blog posts from all blog sites within its own site collection. To solve this problem we will use a Content Query Web Part and a customized ItemStyle.xsl using XSLT. Please note that the “SharePoint Server Publishing Infrastructure” needs to be enabled at the site collection to display the content query web part. Step 1: Add a Content Query Web Part to Page Navigate to the site that you want the blog posts to show up and click on edit page. Under Editing Tools in the Ribb

.Net 3.5 SP1 – Full Install Packages (Tam Kurulum)

.Net Framework 3.5 SP1 ‘i bilgisayarınıza kurmak istediğinizde normal şartlar altında Microsoft ‘un sitesinde 2.7 mb ‘lik bir dosya indirir ve kurulum işlemlerinizi bu dosya üzerinden yaparsınız. Ancak bu indirmiş oluğunuz dosya yaklaşık 220 mb ‘lik veriyi internetten indirerek kurulum yapmaktadır. İnternet çıkışına izin verilmeyen kurumlar ve kuruluşlar için bu durum bir sıkıntı oluşturmaktadır. Bu sebepten ötürü aşağıdaki link yardımı ile tam yükleme paketini indirdikten sonra hiç internet ihtiyacınız olmadan .Net 3.5 SP1 ‘i kurabilmeniz mümkün olacaktır. Link

Microsoft .Net Framework 3.0 & 3.5 Full Download

.Net ile yazılım geliştiricilerin özelliklede Framework 3.x ile geliştirenlerin başlıca sorunu kurulum dosyası hazırladıklarında .Net Framework ‘ü kurmak için internete bağlanmalarıdır. Çünkü kurulum dosyaları 2-3 MB arasıdır. Yavaş internet kullanıcılarında ve kurumsal şirketlerde projelerin çok ama çok geç kurulmasına sebep olmaktadır. Bu sebepten ötürü sizlere .Net 3.x Framework ‘lerin tam kurulabilir paketlerinin linklerini sizlere sunuyorum. Umarım yararlı olur. Microsoft .NET Framework 3.5 Setup 32-bit version (Boyut(Size): ~200MB Microsoft .NET Framework 3.0 Setup 32-bit Version (Boyut(Size): ~50MB) 64-bit Version (Boyut(Size): ~90MB) Herkese iyi çalışmalar, kolay kurumlar diliyorum. :)