Şimdi Ara

DataAccessLayer Yazıyoruz !

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
946
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Arkadaşlar bu gece başladığım bir Veri Erişim Katmanı yazıyorum. Direk bir classlibrary değilde windows projesi üzerinde yazıyorum, bitincede classlibrary olarak .dll haline getirecem. Fazla bişey yapmış değilim ama. Kodları burayada yazıyorumki, birşeyler eklemek isteyen arkadaşlar olursa güzel birşeyler çıkar ortaya diye düşündüm.

    Kaynak Proje Dosyası :http://rapid&share.com/files/56027366/DataAccessLayerDeneme.rar.html linkin ortasındaki & işaretini siliniz

     
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;

    using System.Data.SqlClient;
    using System.Collections;

    namespace DataAccessLayerDeneme
    {
    public partial class Form1 : Form
    {
    public class Connection : IDisposable
    {
    SqlConnection conn = null;

    private string mConstr;//ConnectionString

    public string Constr
    {
    get { return mConstr; }
    set { mConstr = value; }
    }

    public Connection() // Default Constructor
    {
    }

    public Connection(string constr)
    {
    conn = new SqlConnection(constr);
    conn.Open();
    }

    public void ConnectToDB() // Bağlantı Açılıyor
    {
    if (conn == null)
    {
    conn = new SqlConnection(mConstr);
    conn.Open();
    }

    }

    public void CloseConnection() // Bağlantı Kapatılıyor
    {
    if (conn != null)
    conn.Close();
    }

    public void Dispose() // Kaynaklar Geri Veriliyor
    {
    if (conn != null)
    {
    conn.Dispose();
    conn = null;
    }
    }

    public SqlParameter SetParameter(string parName, object value)
    {
    SqlParameter pars = new SqlParameter();
    pars.ParameterName = parName;
    pars.Value = value;

    return pars;
    }

    // StoredProcedure Kullanana Komut İşleme Metodu
    public SqlCommand ExecuteNonQuery(string spName, SqlParameter pars)
    {
    SqlCommand cmd = new SqlCommand(spName,conn);
    cmd.CommandType = CommandType.StoredProcedure;

    if (conn.State == ConnectionState.Closed)
    conn.Open();

    cmd.ExecuteNonQuery();

    conn.Close();

    return cmd;
    }

    // StoredProcedure Kullanana Komut İşleme Metodu
    public object ExecuteScalar(string spName, SqlParameter[] pars)
    {
    object retVal = null;

    SqlCommand cmd = new SqlCommand(spName,conn);
    cmd.CommandType = CommandType.StoredProcedure;

    if (conn.State == ConnectionState.Closed)
    conn.Open();

    retVal = cmd.ExecuteScalar();

    conn.Close();

    return retVal;
    }

    // Sql Kodu İle Komut İşleme Metodu
    public SqlCommand ExecuteNonQuery(string komut)
    {
    SqlCommand cmd = new SqlCommand(komut,conn);

    if (conn.State == ConnectionState.Closed)
    conn.Open();

    cmd.ExecuteNonQuery();

    conn.Close();

    return cmd;
    }

    // Sql Kodu İle Komut İşleme Metodu
    public object ExecuteScalar(string komut)
    {
    object retVal = null;

    SqlCommand cmd = new SqlCommand(komut,conn);

    if (conn.State == ConnectionState.Closed)
    conn.Open();

    retVal = cmd.ExecuteScalar();

    conn.Close();

    return retVal;
    }

    // Daha Önceden Olusturulan Bir Command Nesnesi İle DataTable Doldurma
    public DataTable FillTable(SqlCommand cmd)
    {
    SqlDataAdapter dap = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    dap.Fill(dt);

    return dt;
    }

    // Sadece Komut Verilerek DataTable Doldurma
    public DataTable FillTable(string komut)
    {
    SqlCommand cmd = ExecuteNonQuery(komut);

    SqlDataAdapter dap = new SqlDataAdapter(cmd);
    DataTable dt = new DataTable();
    dap.Fill(dt);

    return dt;
    }
    }

    public Form1()
    {
    InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
    // Bu Tip Connection Türetmede otomatik olarak conn.Open() Yapılıyor
    // Ayrıca bizim ConnectToDB() Metodunu kullanmamız Gerekmiyor.
    Connection bag = new Connection("Data Source =.; Initial Catalog = Deneme; Integrated Security = SSPI");

    SqlCommand cmd = bag.ExecuteNonQuery("select * from tbl_Musteriler");
    dataGridView1.DataSource = bag.FillTable(cmd);

    bag.CloseConnection();
    }
    }
    }







  • UP

    Hadi arkadaşlar kimsemi ilgilenmiyor ?
  • Soru nedir ?
  • quote:

    Orjinalden alıntı: İlteriş Kutluk Kağan

    Soru nedir ?


    Soru veya sorun yok arkadaşlar :) sadece bu class ı hepberaber geliştirelim diye yazdım buraya koydum.Kısaca, sizlerde bişreyler ekleyip ve daha sağlam bir DAL yazalım diye.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.