- Mesajlar
- 737
Asp.net ile uğraşan arkadaşlarımın çok işine yarayacak bütün projelerinde kullabileceği fonksiyon dosyası hazırlamayı anlatacağım sizlere.
Öncelikle Fonksiyon dosyası ne işe yarar ondan bahsedeyim. fonksiyon dosyası hepimiz datatable, datarow kullanıyoruz veya veritabanına kayıt eklerken kayıt güncellerken her seferinde bir sürü kod yazmamız gerekiyor bir sürü kod fazlalığı ve zaman kaybı anlamına geliyor buda en basitinden bir kayıt eklemek için normalde
bu kadar kod yazmamız gerekiyor. bu gereksiz kod kullanımının önüne geçmek amacıyla fonksiyon tanımlaması yapmamız gerekiyor.
1 - Öncelikle visual studio da projemizi sağ tıklayarak Asp.Net Folder'dan App_Code yi seçerek bi app_code klasörü oluşturalım.
2- App_Code Klasörünüde sağ tıklayarak Ass New Item i seçecerek Class dosyası ekleyelim dosya ismine istediğimiz herhangi bir ismi verebiliriz. ben Fnksyn ismini verdim.
3 - şimdi ise kullanabileceğimiz bütün işlemler için bir fonksiyon tanımlaması yacağız.
Fnksyn isminde bir class dosyası oluşturup açtığımızda aşağıdaki kodlar karşınıza gelecektir.
4- En Basitinden başlayalım her yerde kullanabileceğimiz Bağlantı classmızı oluşturalım.
peki bunu nasıl kullanacağız. herhangi bir webform oluşturalım ve değişkenleri tanımladığımız kısma "Fnksyn system = new Fnksyn();" yazmamız gerekmektedir. bu fonksiyon tanımlamasını yaptıktan sonra fonksiyon dosyamızdaki bütün fonksiyonları kullanabiliriz. oluşturduğumuz "bgln" isimli classmızı şu şekilde kullanabiliriz.
Örnek = "SqlConnection baglanti = system.baglan();" sadece bunu yazarak bir sürü gereksiz koddan kurtulmuş oluruz.
5 - Şimdide bütün sql cümlelerimizi çalıştırabilecek bir class tanımlayalım.
bu fonksiyon sayesinde istediğimiz sql cümleciğini çalıştırabiliriz.
Kullanım şekli system.sqlcalistir("insert into falan filan......."); şeklinde tek satır kod ile sql cümlelerimizi çalıştırabiliriz.
arkadaşlar sıkıldım doğrusu yazarken datatable datarow ve tek hücreyi almak içinde aşağıdaki tanımlamaları yapmalısınız.
6- datatable(bütün tabloyu alma) için
7 - datarow(tek satır kod almak) için
8 - datacell (sorguyla tek bir hücre almak için kullanılır.)
arkadaşlar çok karışık oldu sanırım. yazarken benimde kafam 56 oldu sıkıntı yaşayan arkadaşlara yardımcı olurum. kolay gelsin umarım faydalı olur.
Öncelikle Fonksiyon dosyası ne işe yarar ondan bahsedeyim. fonksiyon dosyası hepimiz datatable, datarow kullanıyoruz veya veritabanına kayıt eklerken kayıt güncellerken her seferinde bir sürü kod yazmamız gerekiyor bir sürü kod fazlalığı ve zaman kaybı anlamına geliyor buda en basitinden bir kayıt eklemek için normalde
Kod:
SqlConnection verisql = new SqlConnection("Data Source=BYSCAPC\\SQLEXPRESS; Initial Catalog=ornek; Integrated Security=True");
verisql.Open();
String AdiSoyadi, OgrenciNo, Email;
AdiSoyadi = txtadisoyadi.Text;
OgrenciNo = txtogrencino.Text;
Email = txtemail.Text;
SqlCommand Cmdekle = new SqlCommand("Insert Into Ogrenciler (AdiSoyadi, OgrenciNo, Email) Values ('"+AdiSoyadi+"','"+OgrenciNo+"','"+Email+"')", verisql);
Cmdekle.ExecuteNonQuery();
1 - Öncelikle visual studio da projemizi sağ tıklayarak Asp.Net Folder'dan App_Code yi seçerek bi app_code klasörü oluşturalım.
2- App_Code Klasörünüde sağ tıklayarak Ass New Item i seçecerek Class dosyası ekleyelim dosya ismine istediğimiz herhangi bir ismi verebiliriz. ben Fnksyn ismini verdim.
3 - şimdi ise kullanabileceğimiz bütün işlemler için bir fonksiyon tanımlaması yacağız.
Fnksyn isminde bir class dosyası oluşturup açtığımızda aşağıdaki kodlar karşınıza gelecektir.
Kod:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
/// Summary description for Fnksyn
/// </summary>
public class Fnksyn
{
public Fnksyn()
{
//
// TODO: Add constructor logic here
//
}
// burdan itibaren classlarımızı tanımlamaya başlayacağız.
}
4- En Basitinden başlayalım her yerde kullanabileceğimiz Bağlantı classmızı oluşturalım.
Kod:
public SqlConnection bgln() // ben isim olarak bağlantı nesneme bgln ismini verdim siz istediğiniz herhangi bir ismi verebilirsiniz.
{
SqlConnection baglanti = new SqlConnection("Data Source=BYSCAPC\\SQLEXPRESS; Initial Catalog=veritabaniadi; Integrated Security=True"); // bağlantı kodumuz.
baglanti.Open(); // baglanti nesnesini açıyoruz.
return (baglanti); // return ile bgln classına baglanti nesnesi return değeri olarak göndeyor.
}
Örnek = "SqlConnection baglanti = system.baglan();" sadece bunu yazarak bir sürü gereksiz koddan kurtulmuş oluruz.
5 - Şimdide bütün sql cümlelerimizi çalıştırabilecek bir class tanımlayalım.
Kod:
public int sqlcalistir(string sqlverisi) //burda yine istediğimiz isimleri verebiliriz.
{
SqlConnection baglan = this.baglan(); //yukarda oluşturduğumuz bgln fonksiyonunu kullanıyoruz.
SqlCommand sorgu = new SqlCommand(sqlverisi, baglan);
int sonuc = 0;
try
{
sonuc = sorgu.ExecuteNonQuery();
}
catch (SqlException ex)
{
throw new Exception(ex.Message + " (" + sqlcumle + ") ");
}
sorgu.Dispose(); baglan.Close(); baglan.Dispose(); return (sonuc);
}
Kullanım şekli system.sqlcalistir("insert into falan filan......."); şeklinde tek satır kod ile sql cümlelerimizi çalıştırabiliriz.
arkadaşlar sıkıldım doğrusu yazarken datatable datarow ve tek hücreyi almak içinde aşağıdaki tanımlamaları yapmalısınız.
6- datatable(bütün tabloyu alma) için
Kod:
public DataTable BenimDataTable(String sqlveri)
{
SqlConnection baglanti = this.bgln();
SqlDataAdapter adapter = new SqlDataAdapter(sqlveri, baglanti);
DataTable datatbl= new DataTable();
try
{
adapter.Fill(datatbl);
}
catch (SqlException ex)
{
throw new Exception(ex.Message + " (" + sqlveri+ ") ");
}
adapter.Dispose(); baglanti.Close(); baglanti.Dispose(); return dt;
}
Kod:
public DataRow BenimDataRow(String sqlveri)
{
DataTable table = BenimDataTable(sqlveri);
if (table.Rows.Count == 0) return null;
return table.Rows[0];
}
Kod:
public string BenimDataCell(string sql)
{
DataTable table = BenimDataTable(sql);
if (table.Rows.Count == 0) return null;
return table.Rows[0][0].ToString();
}
arkadaşlar çok karışık oldu sanırım. yazarken benimde kafam 56 oldu sıkıntı yaşayan arkadaşlara yardımcı olurum. kolay gelsin umarım faydalı olur.