Merhabalar
Bugünkü yazımızda ASP.NET de bir forma veri girme, veri güncelleme ve veri silme işlemlerini gerçekleştireceğiz,
Bu dersle birlikte Command ile parametreli ve parametresiz bir şekilde procedure çağırmayı öğrenceğiz,
Öncelikle bir adet veri tabanı oluşturuyoruz isim istediğiniz gibi olabilir,
Sonra oluşturduğumuz veri tabanına Musteri isimli bir tablo olusturuyoruz.
Kod:
CREATE TABLE [dbo].[Musteri](
[id] [int] IDENTITY(1,1) NOT NULL,
[Musteri] [varchar](50) NULL
primary key (id))
Tabloyu oluşturduktan sonra bu tablo için kullanacağımız stored procedureleri yazmamız gerekiyor,
Burada yazacagımız procedureler insert , update, delete ve dropdownlisti dolduran selectten olusmaktadır,
Kod:
CREATE PROCEDURE dbo.KisiEkle
(
@KisiEkle varchar(50)
)
AS
BEGIN
INSERT INTO Musteri (Musteri) VALUES (@KisiEkle)
END
CREATE PROCEDURE dbo.KisiListesi
AS
BEGIN
SELECT id,Musteri FROM Musteri
END
CREATE PROCEDURE dbo.GuncellenecekKisi
(
@id int
)
AS
BEGIN
SELECT Musteri FROM Musteri where id = @id
END
CREATE PROCEDURE dbo.KisiGuncelle
(
@id int,
@Kisi varchar(50)
)
AS
BEGIN
update musteri set musteri = @Kisi where id = @id
END
CREATE PROCEDURE dbo.KisiSil
(
@id int
)
AS
BEGIN
delete from musteri where id = @id
END
Procedurelerimizi olusturduktan sonra yapmamız gereken bir asp.net website projesi açmak
Projemizi açtıktan sonra webconfige geliyoruz, ve veri tabanı bağlantısını sağlayan kodu yazıyoruz ,
</system.web> in bittiği yerden başlatalım
Kod:
<connectionStrings>
<add name="Ornek" connectionString="Data Source=.;Initial Catalog=BankaTest;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
Sonra asp.net sayfamız için ilgili objeleri koydugumuz sayfayı olusturalım, sayfaya verdiğim isim default2.aspx
Kod:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Label ID="Label2" runat="server" Text="Kisi Ekleme"></asp:Label>
<br />
<asp:Label ID="Label1" runat="server" Text="Kisi Ekle:"></asp:Label>
<asp:TextBox ID="TextBoxKisi" runat="server"></asp:TextBox>
<asp:Button ID="ButtonEkle" runat="server" Text="Ekle" OnClick="ButtonEkle_Click" />
<br />
<br />
<asp:Label ID="Label3" runat="server" Text="Kisi Güncelleme"></asp:Label>
<br />
<asp:Label ID="Label4" runat="server" Text="Kisi Listesi"></asp:Label>
<asp:DropDownList ID="DropDownListKisiListesi" runat="server" AppendDataBoundItems="True" AutoPostBack="True" OnSelectedIndexChanged="DropDownListKisiListesi_SelectedIndexChanged">
</asp:DropDownList>
<br />
<asp:Label ID="Label5" runat="server" Text="Kişi Adı:"></asp:Label>
<asp:TextBox ID="TextBoxKisiAdiGuncelle" runat="server"></asp:TextBox>
<br />
<asp:Button ID="ButtonKisiGuncelle" runat="server" OnClick="ButtonKisiGuncelle_Click" Text="Guncelle" />
<asp:Button ID="ButtonKisiSil" runat="server" Text="Sil" OnClick="ButtonKisiSil_Click" />
<br />
</div>
</form>
</body>
</html>
gelelim en önemli kısıma , csharp kodlarına , kodların isimlerinden anlaşılsın diye gayet açık yazıldı
Kod:
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!Page.IsPostBack)
{
string connectionString = ConfigurationManager.ConnectionStrings["Ornek"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("dbo.KisiListesi", conn);
cmd.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
DropDownListKisiListesi.DataTextField = "Musteri";
DropDownListKisiListesi.DataValueField = "id";
DropDownListKisiListesi.DataSource = dt;
DropDownListKisiListesi.DataBind();
DropDownListKisiListesi.Items.Insert(0, new ListItem("– Seçiniz –", "0"));
conn.Close();
}
}
catch (Exception ex)
{
//Eğer log katmanınız varsa yazabilirsiniz oraya
}
}
protected void ButtonEkle_Click(object sender, EventArgs e)
{
try
{
string connectionString = ConfigurationManager.ConnectionStrings["Ornek"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("dbo.KisiEkle", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(
new SqlParameter("@KisiEkle", TextBoxKisi.Text)
);
cmd.ExecuteNonQuery();
TextBoxKisi.Text = "";
conn.Close();
Response.Redirect("/Default2.aspx");
}
catch(Exception ex)
{
//Eğer log katmanınız varsa yazabilirsiniz oraya
}
}
protected void DropDownListKisiListesi_SelectedIndexChanged(object sender, EventArgs e)
{
try {
// Seciniz secenegi geldiğinde textbox ı sıfırlıyoruz
if(Convert.ToInt32(DropDownListKisiListesi.SelectedValue) == 0)
{
TextBoxKisiAdiGuncelle.Text = "";
}
string connectionString = ConfigurationManager.ConnectionStrings["Ornek"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("dbo.GuncellenecekKisi", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(
new SqlParameter("@id", Convert.ToInt32(DropDownListKisiListesi.SelectedValue))
);
SqlDataReader dr = cmd.ExecuteReader();
while(dr.Read())
{
TextBoxKisiAdiGuncelle.Text = dr.GetString(0);
}
conn.Close();
}
catch (Exception ex)
{
//Eğer log katmanınız varsa yazabilirsiniz oraya
}
}
protected void ButtonKisiGuncelle_Click(object sender, EventArgs e)
{
try {
string connectionString = ConfigurationManager.ConnectionStrings["Ornek"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("dbo.KisiGuncelle", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(
new SqlParameter("@id", Convert.ToInt32(DropDownListKisiListesi.SelectedValue))
);
cmd.Parameters.Add(
new SqlParameter("@Kisi",TextBoxKisiAdiGuncelle.Text)
);
cmd.ExecuteNonQuery();
conn.Close();
Response.Redirect("/Default2.aspx");
}
catch (Exception ex)
{
//Eğer log katmanınız varsa yazabilirsiniz oraya
}
}
protected void ButtonKisiSil_Click(object sender, EventArgs e)
{
try
{
string connectionString = ConfigurationManager.ConnectionStrings["Ornek"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
conn.Open();
SqlCommand cmd = new SqlCommand("dbo.KisiSil", conn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(
new SqlParameter("@id", Convert.ToInt32(DropDownListKisiListesi.SelectedValue))
);
cmd.ExecuteNonQuery();
conn.Close();
Response.Redirect("/Default2.aspx");
}
catch (Exception ex)
{
//Eğer log katmanınız varsa yazabilirsiniz oraya
}
}
}
Konu ile ilgili sorunuz olursa buradan sorabilirsiniz,