aspnet 3 katmanli mimari
Hazırlayacağımız projeler için ilk olarak veritabanı kısmı hazırlanmalıdır.Bu, ileride projenizin gidişatı açısından önem taşımaktadır.Veritabanı hazırlanmadan projeye başlanırsa zaman kaybı yaşanır. Bu yazımda Asp.Net dilinde veritabanı bağlantısı nasıl yapılır konusuna değineceğim. İlk olarak Visual Studio içerisine veritabanı nasıl eklenir onu anlatayım.
Visual Studio da yeni bir web site veya bir project oluşturduğumuzda sol tarafta Server Explorer bulunmaktadır.Eğer yoksa View Menüsünden açabilirsiniz.Daha sonra Server Explorer üzerinde DataConnection‘a sağ tıklayarak Add Connection‘ geliyoruz
Çıkan sayfada Server Name kısmına . koyuyoruz (kendi bilgisayarımızda çalışmak için)
Select or enter a database name kısmına ise bir veritabanı adı giriyoruz veya SQLSERVER üzerinde hazır bulunan veritabanlarından birisini seçiyoruz ve OK butonuna basıyoruz. Böylece veritabanımız projemize eklenmiş oluyor. Yine Server Explorer üzerine gelen veritabanımızda Tables‘a sağ tıklayıp Add New Table diyerek tablolar ekleyebilir , eklediğimiz tablolara sağ tıklayıp Show Table Data diyerek tablo içerisine veri girebiliriz
Şimdi ise aşağıdaki adımları takip edelim;
Projemizde oluşturacağımız veritabanı için bir bağlantı gerekiyor.Bunun için birçok yol var.Fakat bunun en hızlı ve verimli olanını anlatacağım.Bu da, oluşturacağımız web.config dosyası içerisine bağlantı satırlarını yazmak ile oluyor
İlk olarak projemizde eğer yoksa bir web.config dosyası oluşturalım.Web.config içerisinde <configuration> tagından sonra
<connectionStrings> …. </connectionStrings> tagları arasına aşağıdaki gibi kullanacağımız veritabanı bağlantı satırlarını ekleyelim ;
<add name="Veritabani" connectionString=" Data Source=.; Initial Catalog=veritabaniAdi;
User ID=kullaniciAdi; Password=kullaniciSifresi" providerName="System.Data.SqlClient"/>
Öncelikle burada adı geçen bağlantı stringlerinin ne anlama geldiğini açıklayalım;
Web.config dosyasına bunları ekledikten sonra bu dosyamızın son hali aşağıdaki gibi olacaktır.
Şimdi ise projemiz içerisinde bu veritabanı bağlantımızı çağıracağız.Bunun için, hangi sayfada çağıracaksak o sayfa için using System.Data.SqlClient; kütüphanesini eklememiz gerekiyor.Bilmeyenler için bunun sayfanın en üstünde bulunduğunu hatırlatalım.Ekledikten sonra veritabanı bağlantısı yapacağımız yerlerde aşağıdaki sözdizimini kullanacağız;
SqlConnection baglanti= new SqlConnection (System.Web.Configuration.WebConfigurationManager.ConnectionStrings["Veritabani"].ConnectionString);
Bu söz diziminde baglanti adında bir baglantı nesnesi oluşturduk ve gereken bağlantı sözcüklerini yazdık.Şimdi ise bu kurduğumuz bağlantıyı açmaya geldi.Bunun için de ; baglanti.Open(); yaparak veritabanımız ile bağlantımızı kuruyoruz
Şimdi bu anlattıklarımı örnekleyelim;
Visual studio üzerinde yeni bir Empty Web Site oluşturuyoruz.Yukarıda anlattığımız gibi de bir veritabanı oluşturup projemize ekliyoruz daha sonra Web.config dosyasını aşağıdaki gibi düzenliyoruz;
<?xml version="1.0"?> <!-- For more information on how to configure your ASP.NET application, please visit http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <connectionStrings> <add name="Veritabani" connectionString=" Data Source=.; Initial Catalog=deneme; Integrated Security=True;" providerName="System.Data.SqlClient"/> </connectionStrings> <system.web> <compilation debug="true" targetFramework="4.0"/> </system.web> </configuration>
Daha sonra Solution Explorer üzerinde projemize sağ tıklayarak Add New İtem ‘ a tıklıyoruz.Buradan yeni bir webform oluşturuyoruz.Adı Default.aspx olarak kalsın.Default.aspx sayfasının yanındaki küçük ok’a tıklıyoruz ve kod sayfasına geçiyoruz.Kod sayfasına ise aşağıdaki kodları yazalım;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
SqlConnection baglanti = new SqlConnection
(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["Veritabani"].ConnectionString);
SqlCommand komut = new SqlCommand();
SqlDataReader dr;
protected void goster(string tablo)
{
komut.CommandText = "select * from " + tablo;
komut.Connection = baglanti;
baglanti.Open();
dr = komut.ExecuteReader();
GridView1.DataSource = dr;
GridView1.DataBind();
baglanti.Close();
}
protected void Page_Load(object sender, EventArgs e)
{
goster("kisi");
}
} Şimdi yazdığımız bu kodları açıklayalım;
SqlConnection baglanti = new SqlConnection (System.Web.Configuration.WebConfigurationManager.ConnectionStrings["Veritabani"].ConnectionString);
SqlConnection tipinde baglanti adında bir nesne oluşturuyoruz.Bu nesne veritabanına bağlantıyı sağlar.En sağdaki parantezler içine ise öğrendiğimiz bağlantı sözcüğümüzü yazıyoruz
SqlCommand komut = new SqlCommand();
SqlCommand tipinde komut adında bir nesne oluşturuldu. Bu nesne üzerinden komutlarımızı çalıştıracağız.
komut.CommandText = "select * from " + tablo; komut.Connection = baglanti;
Komut nesnemizin commandtext özelliğine, veritabanımızdan bütün kayıtları getirecek sorgumuzu yazıyoruz connection özelliğine ise kullanacağımız Connection nesnemizi yazıyoruz
SqlDataReader dr;
Veritabanından çektiğimiz kayıtları okumak için bir değişken oluşturuldu
dr = komut.ExecuteReader();
Burada komut nesnemiz çalıştırıldı. Veritabanımızdan gelen bütün kayıtlar dr değişkenine atandı
GridView1.DataSource = dr; GridView1.DataBind();
Bu satırlarda ise Default.aspx sayfamıza eklediğimiz grid için bir kaynak belirtildi (dr) . Ve Grid, DataBind ile bağlandı.
goster("kisi"); Sayfamızın Load olayına yazdığımız bu fonksiyon, doğrudan bağlantıyı sağlar.
Basit bir örnekle basitçe anlatmaya çalıştım. Kusurumuz varsa affola…
Merhaba. Firebase Events'e istatistik attığınızda not set şeklinde bir değer görüyorsanız olası çözümünü göstereceğim. (daha&helliip;) Daha Fazla Oku
Merhaba. Android cihazlar için hazırladığım Namaz Vakitleri uygulaması ile 200'e yakın ülkede tüm namaz-ezan vakitlerini… Daha Fazla Oku
Selamlar. İnsanlar için faydalı olması amacıyla geliştirdiğim Kaza Namazı ve Oruç Takip Uygulamasını sizlere tanıtmak… Daha Fazla Oku
Volley, Android uygulamalarımızda kullandığımız AsyncTask'ın alternatifi olarak ortaya çıkarılan, Google I/O 2013 sunumunda duyurulan bir… Daha Fazla Oku
Merhaba. Bu yazımda Android platformunda kullanıma sunulan, bazı kod bloklarını basitleştiren ve okunabilirliği arttıran ButterKnife… Daha Fazla Oku
Merhaba. Bu yazımda artık baş belası olmuş TikTok reklamlarını, Android uygulamalarımızdaki Admob reklamlarından nasıl kaldıracağımızı… Daha Fazla Oku
Yorumları Göster
Hocam web.config te eger sql authentication ise ve şifre,kullanıcı adımız oldugunda mı
yazarız demek istediğim
Integrated Security=True; herzaman kullanılmak zorunda mıdır
Selam. Hayır kullanmak zorunda değilsiniz
Teşekkürler bilgilendirme için.
SQL server oluşturmak için "." işareti koyup gerekli veritabnı adını yazıyıp ok dediğimde hata alıyorum çözümü nedir acaba ?
öncelikle merhaba "." değil "~" olmalı.
Hocam son kısmı anlamadım goster veya kisi adında bir degisken tanımlamamıştınız
kodu kopyala yapıştır yaptım ve GridView1. kısmı yazım hatası veriyor sebebi ne olabşlir
Elinize sağlık güzel bir makale olmuş.
Gerçekten çok faydalı bir yazı olmuş çok faydalanma fırsatı buldum. Çok teşekkür ederim.
Emeğiniz için teşekkürler...