C# ve ASP .NET ile STORED PROCEDURE kullanarak ziyaretçi defteri uygulaması
|
Evet efenim yeni bir makale, yine bir makale. SQL Stored Procedure yapısını anlayabilmek için basit bir ziyaretçi defteri uygulaması yapacağız. Adım adım gidelim, buyrun;
Microsoft Visual Web Developer’ı açıp New Web Site diyorum ve yeni sitemi açıyorum. İlk yapacağımız şey veritabanı tasarımı olsun. Ziyaretçi defterinde nelerin kaydını tutalım? İsim, eposta, yorum olsun defterimizde. Bir de yorum numarası olsun. Yani 4 alan. Şimdi SQL’i oluşturup yapılandıralım;
Yorum numarası her yorum girildiğinde otomatik artsın istiyorum, bunun için no alanını Identity Column yapmam lazım. (MySQL’deki auto increment MSSQL’de Identity Column diye geçiyor.) (Identity Column doğal olarak sadece int değişkenler için geçerli olabilir. ) Sonra veritabanımı defter adıyla kaydedip kapatıyorum. Sırada Stored Procedure oluşturmak var. Database Explorer’dan veritabanımıza tıklayınca çıkan klasörlerden biri de Stored Procedures klasörü. Ona sağ tıklayıp Add New Stored Procedure diyoruz. Ve şunları yazıyoruz;
Html kısmını şu şekilde yapıyorum;
Şimdi kaydet düğmesine basıldığında çalışacak olan fonksiyonu belirlememiz gerekiyor. Bunun için Kaydet düğmesine çift tıklıyorum ve kod sayfasına şu ekleniyor;
Bu fonksiyon içerisinde veritabanına bağlanıp kaydettiğimiz stored procedure’ü kullanarak girilen verileri veritabanına kaydedeceğiz.
Şimdi gelelim Default.aspx sayfasına; Default.aspx sayfasının yapacağı 2 iş var, biri yeni yorum eklendiyse bir mesaj çıkartmak, diğeri de ziyaretçi defterine yazılanları göstermek. Önce birincisini yapalım; En üste text değeri “Yorumunuz eklenmiştir” ve Visible değeri False olan bir Label ekliyorum. Yapacağımız şey, yorum=eklendi gelirse visible’ı True yapmak. Bu label’a çift tıklıyorum ve Page_Load içine şunu yazıyorum;
Şimdi de gridview ile defter yorumlarını gösterelim.
Yapacağımız şeyler bitti, deneyelim.
Düzgün çalışıyor gibi görünüyor. Ama bir sorun var. Yorumu 3 satır yazdığım halde burada tek satır görünüyor. Bunun için yapacağımız şey yorum içindeki \n‘leri <br/> ile değiştirmek. Önce yorum’u basan değişkene erişebilmek için gridview’in yorum sütununu TemplateField haline getiriyoruz. Daha sonra Source görünümünde gördüğümüz Bind(”yorum”) u Satırdönüştür(Eval(”yorum”)) ile değiştiriyoruz. Ve şimdi kod kısmında Satırdönüştür fonksiyonunu yazalım;
Böylece Gridview’e dönüştürülmüş veri gidecek. Ve son görünüm şu şekilde;
Ne demişler, Code is poetry. Öptüm yanacıklarınızdan. |
English Articles
Emrah Üstün





26 Ağustos, 2008 saat 05:16
ellere sağlık
27 Ağustos, 2008 saat 06:24
[...] Yanlış: Daha sonra Parameters.Add ile o parametrelerin “value“larını atadık. Ve çalıştırdık. Ne demişler, Code is poetry. [...]
12 Aralık, 2008 saat 15:22
vallaha aspx kursuna gidiyorum aspx e yeni gectik ayrica visual basic,access,fireworks ve flash ogrencisiyim ama su anda anlattiklarinin bircogunu bayagi bir yorumlama ile yapabilirim ki bunlari yorumlamak icin de bu kodlarin ne anlama geldigini bilmek gerekiyor ama siz bu kodlari hazir olarak vermissiniz. Kodlarin ne ise yaradigini anlatsaniz daha super olurdu. ama yine de tesekkurler su anda etrafimda birbirini rakip goren cok kisi var ki kimse kimseye buldugu yada ogrendigi seyleri ogretmiyor. Yine de siz paylasmissiniz ellerinize saglik… Bunu ogrenebilseydim kendi siteme bi ziyaretci defteri koyacaktim. ama artik hocamizin bize anlatmasini beklicez yada sorunca zamanini bekle demezse gostermesini…
15 Aralık, 2008 saat 11:53
Aslında bu yazıda amaç C# veya ASP .NET anlatmak değil Stored Procedure anlatmaktı, o sebeple kodları anlatmadım. Anlamadığın yerleri sorarsan yardımcı olayım.
Diğer konu da,
evet .NET çiler bencildir. Ben PHP’den sonra ASP .NET’e geçtim ve gördüm ki bilgi paylaşımı çok az. (PHP’ye göre)
PHP’de birsürü bedava kod bulabiliyorsunuz, .NET’te ise bir ziyaretçi defteri koduna bile 40-50 lira istiyorlar. E tabi .NET ticari çünkü.
Sonuç olarak, yaşasın açık kaynak.
11 Mayıs, 2009 saat 10:15
selam. ya ben bunları yapıyorum sqldatasource da test query kısmında verileri de görüyorum ama websayfamı çalıştırıyorum hiç bişey çıkmıyor nolur yardım edin akşama ödev sunumumuz var bunu halletmem lazım hata nerde bulamıyorum. :S
28 Haziran, 2009 saat 17:50
merhabalar veritabanında bir eksiklik hissediyorum stored procedure ile oluşturdugum veritabanına ekleyemiyorum ?? yardım edermisinizzz
30 Haziran, 2009 saat 13:19
@yusuf,
soru sorarsan cevap vermeye çalışırım. Ama çalışmamasının birçok sebebi olabilir. Kurcala. Ben şimdi ne diyebilirim ki. Değil mi yani…
1 Temmuz, 2009 saat 16:22
@emrahustun
haklısınız… Sorunu çözdüm biraz kurcalayarak.