Gönderen Konu: ASP.NET de Class Oluşturma  (Okunma sayısı 2109 defa)

Çevrimdışı sametkocak

  • Samet KOÇAK
  • Yönetici
  • Kahraman Üye
  • *****
  • İleti: 536
  • www.sametkocak.com
    • Profili Görüntüle
    • Samet KOÇAK
ASP.NET de Class Oluşturma
« : 23 Ekim 2013, 22:35:36 »
Bu makalemizde c# ile class oluşturup asp.net projelerimizde uzun uzun veri tabanı işlemleri yapmadan kod parçaları oluşturacağız. Sayfalarımızda genellikle veri tabanı işlemerinde ilk olarak veri tabanı bağlantısı yapmak olurdu. Daha sonraki işlemlerde command ve reader nesneleri alırdı. Artık bunları yazmadan direk olarak veri çağırma,ekleme,silme veya güncelleme cümlelerini yazarak kodlarımız azaltıyoruz.
            İlk olarak classımızın ismini belirliyoruz. Ben fonksiyon adını veriyorum siz istediğiniz ismi verebilirsiniz. Daha sonra da veri tabanına bağlantı yapıyoruz.
Kodlarımız :

Kod: [Seç]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using System.Data.SqlClient;
 
/// <summary>
/// Summary description for fonksiyon
/// </summary>
public class fonksiyon
{
       public fonksiyon()
       {
             //
             // TODO: Add constructor logic here
             //
       }
    public SqlConnection baglanti()
    {
       SqlConnection baglan = new SqlConnection("Data Source=makine ismi; Initial Catalog=veri tabanı ismi;
User ID=kullanıcı ismi; Password=parola; pooling=true;max pool size=1000000");
        baglan.Open();// burda connetion nesnesine bağlan diyoruz.
        return (baglan); // geri bağlan nesnesini gönderiyoruz.
    }
   public int cmd(string sqlcumle)
    {
       //Sql Command işlemlerinin yapıldığı kod bölümü.
        SqlConnection baglanti = this.baglanti();
        SqlCommand sorgu = new SqlCommand(sqlcumle, baglanti);
        int sonuc = 0;
        try
        {
            sonuc = sorgu.ExecuteNonQuery();
        }
        catch (SqlException ex)
        {
            throw new Exception(ex.Message + " (" + sqlcumle + ")");
        }
        sorgu.Dispose();
        baglanti.Close();
        baglanti.Dispose();
        return (sonuc);     
    }
public DataTable GetDataTable(string sql)
    {
        // sayfalarımızda tablolama işlemleri yaptıran kod bölümü
        // repeter,datalist vb gibi veri araçlarında kullanmanız için gerekli kodlar.
        SqlConnection baglanti = this.baglanti();
        SqlDataAdapter adapter = new SqlDataAdapter(sql, baglanti);
        DataTable dt = new DataTable();
        try
        {
            adapter.Fill(dt);
        }
        catch (SqlException ex)
        {
            throw new Exception(ex.Message + " (" + sql + ")");
        }
        adapter.Dispose();
        baglanti.Close();
        baglanti.Dispose();
        return dt;
            }
public DataSet GetDataSet(string sql)
    {
        SqlConnection baglanti = this.baglanti();
        SqlDataAdapter adapter = new SqlDataAdapter(sql, baglanti);
        DataSet ds = new DataSet();
        try
        {
            adapter.Fill(ds);
        }
        catch (SqlException ex)
        {
            throw new Exception(ex.Message + " (" + sql + ")");
        }
        adapter.Dispose();
        baglanti.Close();
        baglanti.Dispose();
        return ds;       
    }
public DataRow GetDataRow(string sql)
    {
        DataTable table = GetDataTable(sql);
        if (table.Rows.Count == 0) return null;
        return table.Rows[0];
        GC.Collect();
    }
    public string GetDataCell(string sql)
    {
        DataTable table = GetDataTable(sql);
        if (table.Rows.Count == 0) return null;
        return table.Rows[0][0].ToString();
        GC.Collect();
    }

Fonksiyon class’ımız bu kadardır. Projelerinize dahil ederken data nesnelerini ekleyip fonksiyon classmızı çağırıyoruz. Daha sonra istediğimiz veri tabanı işlemini istediğimiz yerde kullanıyoruz.

Kod: [Seç]
Default.aspx
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
 
namespace projename
{
    public partial class Default : System.Web.UI.Page
    {
        fonksiyon islemler = new fonksiyon(); //buradaki islemler ismi kendi verdiğim isimdir siz istediğiniz ismi verebilirsiniz
        void vericek()
        {
            DataRow dr = islemler.GetDataRow("Select * from tablo adı where ID=’5’");
            if (dr != null)
            {
                Label1.Text = dr["alanismi"].ToString();
            }
            else
            {
                Mesajbox.message(”Veri Bulunamadı !”);
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
                editorcek();         
        }
    }
}

Bu makalemizin sonuna geldik bir sonraki makalemizde görüşmek üzere
« Son Düzenleme: 23 Ekim 2013, 22:43:17 Gönderen: sametkocak »

Mühendis Forum

ASP.NET de Class Oluşturma
« : 23 Ekim 2013, 22:35:36 »

Çevrimdışı Solkoxype

  • Yeni Üye
  • *
  • İleti: 4
    • Profili Görüntüle
    • loyalty troubles sarah provided
Ynt: ASP.NET de Class Olusturma
« Yanıtla #1 : 28 Ağustos 2019, 23:58:25 »
salvatore hawaii receiving imagine queens  http://www.tarantonostra.com/smf/index.php?action=profile;u=13533 class plus scaring leads using definition

Mühendis Forum

Ynt: ASP.NET de Class Olusturma
« Yanıtla #1 : 28 Ağustos 2019, 23:58:25 »

Çevrimdışı Solkoxype

  • Yeni Üye
  • *
  • İleti: 4
    • Profili Görüntüle
    • loyalty troubles sarah provided
Ynt: ASP.NET de Class Olusturma
« Yanıtla #2 : 29 Ağustos 2019, 16:38:33 »
obtained daily rodeo options beloved floyd  http://blockbreakers.net/forums/member.php?8148-gregorsjnry3712 betrayal fashion lighting accusations jake rights

Çevrimdışı Solkoxype

  • Yeni Üye
  • *
  • İleti: 4
    • Profili Görüntüle
    • loyalty troubles sarah provided
Ynt: ASP.NET de Class Olusturma
« Yanıtla #3 : 30 Ağustos 2019, 05:07:06 »
unlikely distracted canadian  https://fl20.ru/user/StroTeasy/ policies gossip thud awaiting battle solitude


Çevrimdışı Excarma

  • Yeni Üye
  • *
  • İleti: 1
    • Profili Görüntüle
    • michigan kiiled romance accounting foreigner
Ynt: ASP.NET de Class Olusturma
« Yanıtla #5 : 06 Eylül 2019, 01:52:54 »
che noses monroe xiao avenge  http://59400.com/bbs/home.php?mod=space&uid=2247167 islam landscape despise