Ş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
1.075
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
Öne Çıkar
0 oy
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 ?
    _____________________________
    GALAXY S25 Ultra
    INTEL Core i7-3770K || ASROCK Z77 Extreme6 || GIGABYTE GTX670 Windforce 3X OC || GSKILL RipjawsX DDR3-1600Mhz 16GB (2x8GB) || CORSAIR 400R Carbide || Corsair CX v2 750W || OCZ Vertex4 2.5 128GB SSD || SEAGATE Barracuda 1TB 64MB 7200rpm SATA || NOCTUA U9B || DELL 23" U2312HM LED
  • 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.
    _____________________________
  • Yapay Zeka’dan İlgili Konular
    Searchindexer dosyası
    17 yıl önce açıldı
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.