Ocak 9, 2009
Öncelikle veritabanıyla bağlantıyı kurabilmemiz için bir SqlConnection nesnesi oluşturmamız gerekiyor. Oluşturduğunuz SqlConnection nesnesini ne zaman açıp ne zaman kapattığımız çok önemlidir. Günümüzde yakalanan güvenlik açıklarının geneli bağlantının açık kalmasından kaynaklanmaktadır.
SqlConnection cnn = new SqlConnection(“Data Source=192.168.1.158; Initial Catalog = OgrTakip; User ID = ogr; Password=abcd.1234″);
Daha sonra oluşturacağımız SqlCommand nesnesi sayesinde veritabanımızda yazdığımız sql cümleciklerini ya da stored procedurelerimizi çalıştırabilmekteyiz.
SqlCommand cmd = new SqlCommand(“select * from tblOgr”, cnn);
Veritabanımızdan verileri çekmenin 2 yolu vardır. Biri offline olarak çekmemizi sağlayan SqlDataAdapter nesnesi. Bu nesne veritabanına ulaşıp bütün tabloyu alıp size geri döndürür. Bir diğer seçeneğimiz online olarak veri çekmemizi sağlayan SqlDataReader nesnesi. Bu nesne ise satır satır çalışır. Yani tablonun tümüne bir kerede ulaşıp size geri döndürmez. Tablodaki satırlara ulaşıp onları sırayla size döndürür.
Ulaştığımız verileri sayfamızda gösterebilmemizi sağlayan 2 önemli nesnemiz bulunmaktadır; DataTable ve DataSet.
DataSet > DataTable > List > Object
DateSet içerisinde DataTable’lar barındırır. Veritabanımızdaki tabloları bir araya getirip memory’de tutmak istersek DataSet kullanırız. Ama çoğu zaman bize bir tablo gerekir bu tür durumlarda sadece DataTable işimizi görecektir. DataSet kullanıp memory’yi şişirmeyelim.
Eğer sadece bir değer alacaksak onu object gibi bir nesneye koymalıyız.
SqlConnection cnn = new SqlConnection(“Data Source=192.168.1.158;Initial Catalog=OgrTakip;User ID=ogr;Password=abcd.1234″)
SqlCommand cmd = new SqlCommand(“select count (*) from tblOgr”, cnn);
cmd.ExecuteNonQuery();
object a = cmd.ExecuteScalar();
Ya da sadece bir sütun bilgi alacaksak. Bu durumda list ya da DataTable kullanabiliriz.
List<object> li = new List<object>();
SqlConnection cnn = new SqlConnection(“Data Source=192.168.1.158;Initial Catalog=OgrTakip;User ID=ogr;Password=abcd.1234″);
SqlCommand cmd = new SqlCommand(“select * from tblOgr”, cnn);
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
li.Add(dr.GetValue(3));
}

1 Yorum |
Ado.Net, Csharp | Etiketlendi: Ado.Net, Csharp, veritabanı |
Kalıcı Bağlantı
gurkank tarafından yazıldı
Ekim 23, 2008
Öncelikle default.aspx sayfamızda şekildeki gibi 3 tane textbox ve 1 tane buton oluşturuyoruz.

Sıradaki işlemimiz bir sınıf oluşturmak. Bunun için Add-New Item yolunu izleyerek karşımıza çıkan pencereden class seçeneğini seçiyoruz. Oluşturduğumuz sınıfa “kisi” adını veriyoruz ve sınıfımızın içine aşağıdaki kodları yazıyoruz.
//constructor
public kisi()
{
//nesne ilk oluştuğunda gerçekleştireceği hareket.
}
//sınıfımızın içinde değişkenlerimizi tanımlıyoruz.
public kisi(string ad, string soyad, string telefon)
{
Ad = ad;
Soyad = soyad;
Telefon = telefon;
}
//değişkenimizi field olarak görmemizi sağlar.
private string m_ad;
//değişkenimizi property olarak görmemizi sağlar.
public string Ad
{
get {return m_ad;}
set {m_ad = value;}
}
private string m_soyad;
public string Soyad
{
get { return m_soyad; }
set { m_soyad = value; }
}
private string m_telefon;
public string Telefon
{
get { return m_telefon; }
set { m_telefon = value; }
}
//veriyi xml’e kaydetme methodunu oluşturuyoruz.
public void xmlekaydet()
{
//yeni bir XmlTextWriter nesnesi oluşturarak bu nesne içerisinde
//xml’imizi nereye oluşturacağımızı belirtiyoruz.
XmlTextWriter xmlDocument = new XmlTextWriter(@”c:\kayit.xml”, System.Text.UTF8Encoding.UTF8);
//verimizi xml dosyasına yazmaya başlıyoruz.
xmlDocument.WriteStartDocument();
xmlDocument.WriteStartElement(“kisi”);
xmlDocument.WriteAttributeString(“ad”, m_ad);
xmlDocument.WriteAttributeString(“soyad”, m_soyad);
xmlDocument.WriteAttributeString(“telefon”, m_telefon);
xmlDocument.WriteEndElement();
xmlDocument.WriteEndDocument();
//yazma işlemini sonlandırıyoruz.
xmlDocument.Close();
}
Sınfımızın içine kodları yazdıktan sonra Default.aspx’te oluşturduğumuz butonun Click özelliğine aşağıdaki kodları yazıyoruz.
//yeni bir kisi nesnesi oluşturarak
//textbox’ların bu değişken içinde yer almasını sağlıyoruz.
kisi k = new kisi(TextBox1.Text,TextBox2.Text,TextBox3.Text);
//kaydetme methodumuzu çağrıyoruz.
k.xmlekaydet();
//kayıt işleminin tamamlandığını ekranda gösterecek.
Response.Write(“Kayıt Tamamlandı.”);
İşlemimiz bu kadar. Artık oluşturduğunuz XML dosyalarına veri yazdırabilirsiniz.
Aşağıdaki linkten uygulamayı indirebilirsiniz.
http://uploaded.to/?id=rjzq4e

5 Yorumlar |
Asp.Net, Csharp, XML | Etiketlendi: Asp.Net, Csharp, XML |
Kalıcı Bağlantı
gurkank tarafından yazıldı
Ekim 15, 2008
Private : Erişim belirteci işaretlenen ögeye sadece sınıfın içinden erişilebileceği anlamına gelir. Bu ögeler kalıtım yoluyla aktarılamaz.
Public : Fonksiyona sınıf içinden ve sınıf dışından erişime izin verir.Ayrıca kalıtım ile aktarılır.
ÖRNEK :
Sn. Kerem KÖSEOĞLU’nun Programcılık Mantığı adlı kitabında vermiş olduğu piyano örneğini kısaca sizinle paylaşmak istedim.Piyanonun yapısını incelediğimizde kabaca iki bölümden oluştuğunu söyleyebiliriz.Herkesin kullanabildiği, herkese açık olan parçaları (tuşlar, pedallar vs.) ve göremediğimiz gizli parçaları (teller , çekiçler vs.). Tuş ve pedalları piyano başına oturan herkes kullanabilirken teller ve çekiçleri sadece piyano imalatçıları modifiye edebilir. Bu örneği programlama açısından yorumlarsak piyanonun tuş ve pedallarını herkes kullanabildiği için publicle, teller ve çekiçleri ise privatela ilişkilendirebiliriz.
Protected : Erişim belirteci işaretlenen ögeye sadece sınıfın içinden erişilebileceği fakat alt sınıflara aktarılabileceği anlamına gelir.
Internal : Method ya da field tanımlandığı class içerisinden ve class’ın tanımlı olduğu namespace içerisinden erişilebilir.
Sealed : İlgili sınıfın türetilme özelliğini kaldırır.
Abstract : Bir methodu ya da class’ı soyut yapmak için kullanılır.
Static : Örneği alınmayan sadece iş yapan sınıftır.Biraz daha hızlıdır.
Void : Geriye değer döndürmeyen fonksiyon türüdür.
Virtual : Değerin ezilmesine izin verir.
Override : Base’de tanımlanan methoddur. Değeri ezmek ya da değiştirmek için kullanılır.
New : Ezilmeyen değeri ezen fonksiyondur.
Kaynak : Programcılık Mantığı (s.289) Kitabı

» yorum bırak; |
Csharp | Etiketlendi: c#, Csharp |
Kalıcı Bağlantı
gurkank tarafından yazıldı