Günün Sözü

"Her Şeyin Bir Şeyini, Bir Şeyin Her Şeyini Bileceksiniz..." Sakıp SABANCI

07 Ocak 2017

Asp.net Veritabanı Bağlantısı

Bu makalemizde Asp.net veritabanı bağlantısı için kullanılan çeşitli yöntemleri ve örnek kodlamaları inceleyeceğiz. Asp.net veri tabanı bağlantısı için MS SQL veritabanını kullanacağız. Bağlantı için kullanılan çeşitli yöntemlerden Web.config dosyası, harici bir class dosyası ve button click olayı içine yazılan bağlantı cümlelerini inceleyeceğiz.

Makalemizi örnek bir proje kodlayarak anlatacağız. Makalemizin son bölümünde hazırladığımız örnek projeyi ve kaynak kodlarını bulabilirsiniz.Uygulamaya geçmeden önce yukarıda bahsettiğimiz 3 farklı kullanımı anlatalım.

1. Web.Config ile Veritabanı Bağlantısı

Web.config, Asp.net projemizin (yada websitesi) ayarlarının tutulduğu dosyadır. Veritabanı bağlantı cümlesi, session ayarlamaları, Url yapısı tanımları, hata kontrolü gibi ayarlamalar web.config dosyası ile yapılır. Sitenin genel ayarları için kullanılır. Buradan da anlaşılacağı üzere, web.config dosyasında tanımlanacak bir bağlantı cümlesi ile sitemizdeki tüm sayfalarda kolayca veritabanı bağlantısına sahip oluruz. Web.config dosyası XML temelli bir yapıya sahiptir.

2. Class Dosyası ile Asp.net Veritabanı Bağlantısı

Asp.net class dosyaları projenin çeşitli yerlerinde tekrar tekrar kullanacağımız kod parçalarını yazabileceğimiz dosyalardır. Tekrar eden kodlarımızı harici bir dosyada tutmak kod okunurluğunu arttırdığı gibi, projemizin daha yönetilebilir olmasını da sağlar. Veritabanı işlemlerini de yine harici bir class dosyası üzerinden yapabiliriz. Özellikle geliştirme aşamasında sıkça değişen bağlantı cümlelerini (Connection Strings) yönetmek oldukça kolaylaşır. Web.config kullanımından farkı ise, programatik olarak daha özgür olabiliriz. Class dosyaları C# ile (Projenizin dili ile) kodlanır.

3. Click Olayı İçerisinde Veritabanı Bağlantısı

Projeniz çok küçük boyutlu ise yada henüz öğrenme aşamasındaysanız, bağlantı cümlelerinizi doğrudan buttonların click olayının içerisine de yazabilirsiniz. Bu durumda her, button için bağlantı cümlesini tekrar tekrar yazmanız gerekir.


Bağlantı Cümlesi (Connection Strings)

Projemize bağlanacağımız veritabanını tanıtmak için yazdığımız komutlara bağlantı cümlesi (Connection Strings) denir. Kullandığınız veritabanı türüne, sürümüne göre ve bağlantı durumuna göre bu bağlantı cümleleri farklılık gösterir. Bağlantı cümleleri için connectionstrings.com iyi bir rehberdir.
Bu kadar ön bilgi yeterli sanırım. Artık Visual Studio‘ ya geçip kodlamaya başlayabiliriz. Yeni bir web site açıp bir adet web form ekleyerek kodları yazmaya başlayabiliriz. “Server Explorer” penceresinden veritabanı bağlantısı yapmayı unutmayınız. Biz projede “BaglantiDatabase” ismindeki veritabanını kullanacağız.

Button Click Metodu ile

Sayfamıza “System.Data.SqlClient” kütüphanesini ekliyoruz. Veritabanı bağlantısı için bu kütüphaneyi kullanacağız. Daha sonra sayfamıza bir adet button ekleyip buttonnun click olayına bağlantı cümlemizi yazabiliriz.Bu aşamaya kadar yazdığımız kodlar aşağıdaki gibi olacak.

protected void btnBaglanti_Click(object sender, EventArgs e)
{
SqlConnection baglantiCumlemiz = new SqlConnection(@”Data Source=.;Initial Catalog=BaglantiDatabase;Integrated Security=True”);
baglantiCumlemiz.Open();
Response.Write(“Button ile veritabanı bağlantısı başarılı!”);
baglantiCumlemiz.Close();
}

Bağlantı cümlemizi yazdık, bağlantımızı Open() metodu ile açtık, ekrana mesajımızı yazdırdık ve bağlantımızı Close() metodu ile kapattık. Herhangi bir sorunla karşılaşmadan bağlantımızın gerçekleştiğini görebildik. Response.Write() metodu parantezler içerisine yazdığımız metni ekranda göstermemizi sağlar. Bunun için mesajımızı göstermek için bu metodu kullandık.

Web.Config Yöntemi

Artık web.config üzerinden bağlantı yapmayı deneyebiliriz. Bunun için sayfamıza bir button daha ekliyoruz ve web.config dosyamızı açıyoruz.
Web.config dosyasında <configuration> düğümü içerisinde <system.web> düğümünün altına yeni bir düğüm olarak <connectionStrings>  düğümünü ekliyoruz. Bağlantı cümlemizide ekledikten sonra web.config dosyasımız aşağıdaki gibi olacaktır.

Not: siz kodlama yaparken parantez işareti yerine büyük-küçük işareti yazmayı unutmayın, html bu kodları yorum olarak göstermediği için böyle yazdım.

(configuration)
(system.web)
(compilation debug=“true” targetFramework=“4.5.2” /)
(httpRuntime targetFramework=“4.5.2” /)
(/system.web)
(connectionStrings)
(add name=“baglantiCumlemiz2” connectionString=“Data Source=.;Initial Catalog=BaglantiDatabase;Integrated Security=True” providerName=“System.Data.SqlClient”/)
(/connectionStrings)
(/configuration)

Şimdi ConfigurationManager aracılığı ile bağlantımızı kullanacağımız yerde (bu örnek için button içinde) çağırıyoruz. Diğer kodlamamız aynı.

protected void btnWebConfig_Click(object sender, EventArgs e)
{
SqlConnection baglantiCumlemiz2 = new SqlConnection
(System.Web.Configuration.WebConfigurationManager.ConnectionStrings
[“baglantiCumlemiz2”].ConnectionString);
baglantiCumlemiz2.Open();
Response.Write(“web.config ile veritabanı bağlantısı başarılı!”);
baglantiCumlemiz2.Close();
}

Class Dosyası Yöntemi

Son yöntemimiz olan harici bir class dosyası ile veritabanı bağlantısı için birtakım eklemeler ve düzenlemeler yapacağız projemizde. Öncelikle “Solution Explorer” penceresinde sağ tıklayıp projemize App_Code klasörü ekleyeceğiz. (Add > Add ASP.NET Folder > App_Code) Sonraki adımda bu klasör içine bir adet Class dosyası (.cs) ekliyoruz. Bu dosyamızın adını örnek projemizde “Baglanti.cs” olarak kaydettik. Class dosyamızı açıp içerisine bağlantı cümlemizi yazıp, bağlantımızı açıyoruz. Burada tanımladığımız metodu projemizin diğer dosyalarında çağıracağımız için “return” deyimi ile bize bağlantı döndürmesini istedik. Class dosyamızın kodlaması aşağıdaki gibi olacak.

using System.Data.SqlClient;
public class Baglanti
{
public SqlConnection Baglan()
{
SqlConnection baglantiCumlemiz3 = new SqlConnection(@”Data Source=.;Initial Catalog=BaglantiDatabase;Integrated Security=True”);
baglantiCumlemiz3.Open();
return baglantiCumlemiz3;
}
}

Şimdi ana sayfamıza dönüp, class dosyamızdan veritabanı bağlantısını çağıracağız. Yeni bir buton daha ekleyip buttonun click olayına aşağıdaki kodlamayı yapacağız. Kodlamamızın etkin olması için de “Baglanti” ismini verdiğimiz class dosyamızı bu sayfada kullanacağımızı belirten “ Baglanti baglantimiz = new Baglanti(); ”  tanımlamamızı buttonun click olayının hemen üzerinde yazıyoruz. Bu kodlamadan sonraki kodlarımız aşağıdaki gibi olacak.

Baglanti baglantimiz = new Baglanti();
protected void btnClassDosyasi_Click(object sender, EventArgs e)
{
SqlConnection baglantiCumlemiz3 = baglantimiz.Baglan();
Response.Write(“Class dosyası ile veritabanı bağlantısı başarılı!”);
baglantiCumlemiz3.Close();
}

Alıntıdır.
Kaynak: http://www.teknologweb.com/asp-net-veritabani-baglantisi

Hiç yorum yok:

Yorum Gönderme

İletişim Formu

Ad

E-posta *

Mesaj *