Asp.Net Class ile Database Bağlantısı

MertkanElpeze

Asistan
Katılım
6 Ekim 2010
Mesajlar
151
Reaksiyon puanı
4
Puanları
18
Kaynak : http://wp.me/p1dKsd-3y

Merhaba bugün asp.net ile class kullanarak database bağlantısı kurmayı göstereceğim. Kaynak kodları sizinle paylaşacağım her zamanki gibi . O zaman hemen başlayalım (:

Visual Studio ‘ da yeni bir Asp.Net projesi açalım ve işlemlerimize başlayalım.

MyTestDb adında bir sql veri tabanımız var ve içerisinde Tbl_Sozler adında bir tablomuz mevcut Tablomuzun içerisinde ise rastgele buldugum bir kaç özlü söz bulunmakta ;

sql.png


Şimdi üstte gördüğümüz veritabanımıza baglanmak için bir class oluşturalım Solution Explorer’den siteize sağ tıklayıp Add New Item sekmesini seçiyoruz

class1.jpg

ve açılan pencerede Class’ı seçip OK Tuşuna basıyoruz ;

class2.jpg


Class’ın adını verip kaydettikten sonra önümüze bir seçenek cıkacak buna evet dersek class’ımız App_Code adlı klasorde belirecektir Evet dedim ve class ismini VeriTabaniBaglantiClassi.cs olarak verdim.

Oluşan Class’ımızın hemen namespace kısmına sql işlemlerimiz için using System.Data.SqlClient; satırını ilave ediyoruz ve içi boş class’ımız aşağıdaki gibi oluyor ;
myclass1.png


Class’ımız oluştu sql namespace’i eklendi şimdi sıra geldi class’ın işlevine yani class ile veri tabanına baglanırken yapmamız gereken olaya. Temel anlamda normal bir connection tanımlarken ki olaylardan farklı birşey yapmayacağız. Sadece baglantı cümleciğimizi bir class içerisinde barındıracağız. Bunun en temel sebebi 195 ayrı sayfada 195 tane connection tanımlanması yapılmasından bizi kurtarmasıdır. Sadece bu sebebten bile class ile database bağlantısı kullanmak bir artıdır.

Şimdi Class’ımızın içerisine sqlConnection bilgilerimizi yazacağız bunu yazarken class içerisine public formatında bir fonksiyon yazıyoruz fonksiyonun içerisinede conneciton tanımlamamızı yapıyoruz. başta dediğimiz gibi 195 baglantı gerekirse 195 farklı yerde kullanacaksak public türünde olmalı ki diğer form ve sayfalar da oluşturduğumuz bu class’ı görsün ve baglantı hizmetinden yararlansın. İçerik aşağıdaki gibi olacaktır ;

myclass2.png


Temel anlamda bu class içerisindeki baglan(); fonksiyonu çağırıldığı zaman olacak olayları listeleyelim derseniz ;

1- Yeni bir bağlantı oluştur
2- Bu bağlantığı aç
3- Ve bu fonksiyonun çağrıldığı yere (işte o 195 yer veya yerler) açık olarak geri döndür.

Şimdi Default.Aspx sayfamızın code behind’ına geliyoruz. Oluşturduğumuz bağlantıyı açalım ;

mypage1.png


Default.Aspx teki mantığı satır satır açıklarsak ;

-VeriTabaniBaglantiClassi’ından bir tane oluşturduk ve adına bağlantımBurda dedim NEDEN ? çünkü class dosyamın içerisinde esas connection bilgilerim var (k.adım,şifrem,baglantı server adresim)

-EsasBağlantı adında bir sql connection oluşturdum ve classtaki baglantı fonksiyonunu çağırdım NEDEN ? çünkü normal şartlarda bir sqlconnection tanımlarken SqlConnection baglanti = new SqlConnection(bağlantı bilgileri şifre falan); yapısını kullanıyordum yani Esas bağlantı da bu işlemi yapıyor.

-Baglantım Class’tan açık bir şekilde döndüğünden bir daha .Open() metotunu çağırmıyorum direk ekrana response.Write ile deneme babında bir mesaj yazdırıyorum ki bağlanmasa bu deneme mesajını yazmadan hata verecektir bizde mesajı göremeyeceğiz.

-Ve son olarak bağlantımızı Kapatıyoruz.

İşte Sonuç ;

finish.png


Not : e databasede Tbl_Sozler diye bi tablo vardı o nolacak diyenler olabilir. Diğer makalelerde bu database’i kullanarak örnek yapacağım bi bağlanalımda
 
Üst