Insert Update Delete Using 3 tier Architecture In ASP.net
Add new project:-
Step 2 Add project:-
Step 3: Add Web Page:-
Step:4
Aspx page code:-
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Employee.aspx.cs" Inherits="_3_tire_test.Employee" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<table>
<tr>
<td>Name:</td>
<td><asp:TextBox ID="Textname" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Address:</td>
<td><asp:TextBox ID="Textaddress" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td>Age:</td>
<td><asp:TextBox ID="Textage" runat="server"></asp:TextBox></td>
</tr>
<tr>
<td></td>
<td><asp:Button ID="btnsave" runat="server" Text="Save" OnClick="btnsave_Click" /></td>
</tr>
<tr>
<td></td>
<td><asp:TextBox ID="textsearch" runat="server"></asp:TextBox><asp:Button ID="btnsearch" Text="Search" runat="server" OnClick="btnsearch_Click"></asp:Button></td>
</tr>
<tr>
<td></td>
<td><asp:GridView ID="grd" runat="server" AutoGenerateColumns="false" OnRowCommand="grd_RowCommand">
<Columns>
<asp:TemplateField HeaderText="Emp name">
<ItemTemplate>
<%#Eval("Name") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Age">
<ItemTemplate>
<%#Eval("Age") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<%#Eval("Address") %>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Delete">
<ItemTemplate>
<asp:LinkButton ID="lnkbtndel" runat="server" CommandName="DEL" Text="Delete" CommandArgument='<%#Eval("Empid") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Edit">
<ItemTemplate>
<asp:LinkButton ID="lnkbtnedt" runat="server" CommandName="EDT" Text="Edit" CommandArgument='<%#Eval("Empid") %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView></td>
</tr>
</table>
</div>
</form>
</body>
</html>
Step:5 Add library file DAL And BAL.
DAL code:-
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
namespace DAL
{
public class Data_Access_Layer
{
SqlConnection con = new SqlConnection(ConfigurationSettings.AppSettings["DBCS"]);
SqlCommand cmd;
DataSet ds;
SqlDataAdapter da;
public void Insert(string sp_name, SqlParameter[] parm)
{
try
{
con.Open();
SqlCommand cmd = new SqlCommand(sp_name, con);
cmd.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < parm.Length; i++)
{
cmd.Parameters.Add(parm[i]);
}
cmd.ExecuteNonQuery();
}
catch (Exception EX)
{
throw EX;
}
finally
{
con.Close();
}
}
public DataSet GET(string sp_name)
{
try
{
con.Open();
cmd = new SqlCommand(sp_name, con);
da = new SqlDataAdapter(cmd);
ds = new DataSet();
da.Fill(ds);
}
catch (Exception EX)
{
throw EX;
}
finally {
cmd.Dispose();
da.Dispose();
con.Close();
}
return ds;
}
public DataSet GETSET(string sp_name, SqlParameter[] parm)
{
try
{
cmd = new SqlCommand(sp_name, con);
cmd.CommandType = CommandType.StoredProcedure;
for (int i = 0; i < parm.Length; i++)
{
cmd.Parameters.Add(parm[i]);
}
da = new SqlDataAdapter(cmd);
ds = new DataSet();
da.Fill(ds);
}
catch (Exception EX)
{
throw EX;
}
finally
{
cmd.Dispose();
da.Dispose();
con.Close();
}
return ds;
}
}
}
BAL code :-
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using DAL;
using System.Data;
using System.Data.SqlClient;
namespace BAL
{
public class BAL_Employee
{
Data_Access_Layer _dal = new Data_Access_Layer();
public int empid { get; set; }
public string name { get; set; }
public string address { get; set; }
public int age { get; set; }
DataSet ds;
public void employee_insert()
{
SqlParameter [] arg ={
new SqlParameter("@Name",name),
new SqlParameter("@Address",address),
new SqlParameter("@Age",age),
};
_dal.Insert("usp_employee_insert", arg);
}
public DataSet Employee_get()
{
ds = new DataSet();
ds = _dal.GET("usp_employee_get");
return ds;
}
public void Employee_delete()
{
SqlParameter[] param1 ={
new SqlParameter("@empid",empid)
};
_dal.Insert("usp_employee_delete", param1);
}
public DataSet Employee_Edit()
{
SqlParameter[] param1 ={
new SqlParameter("@empid",empid)
};
ds = new DataSet();
ds = _dal.GETSET("usp_employee_edit", param1);
return ds;
}
public void Employee_Update()
{
SqlParameter[] param1 ={
new SqlParameter("@Empid",empid),
new SqlParameter("@Name",name),
new SqlParameter("@Address",address),
new SqlParameter("@Age",age),
};
_dal.Insert("usp_employee_update", param1);
}
public DataSet Employee_serarch()
{
SqlParameter[] param1 = {
new SqlParameter("@search",name)
};
ds = new DataSet();
ds = _dal.GETSET("usp_employee_search", param1);
return ds;
}
}
}
Employee.cs page code:-
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BAL;
using System.Data;
namespace _3_tire_test
{
public partial class Employee : System.Web.UI.Page
{
BAL_Employee _bal = new BAL_Employee();
DataSet ds;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
fill_grd();
}
}
public void fill_grd()
{
ds = new DataSet();
ds = _bal.Employee_get();
if (ds.Tables[0].Rows.Count > 0)
{
grd.DataSource = ds;
grd.DataBind();
}
else
{
grd.DataSource = null;
grd.DataBind();
}
}
protected void btnsave_Click(object sender, EventArgs e)
{
_bal.name = Textname.Text;
_bal.age = int.Parse(Textage.Text);
_bal.address = Textaddress.Text;
if (btnsave.Text == "Save")
{
_bal.employee_insert();
}
else
{
_bal.empid = int.Parse(ViewState["EID"].ToString());
_bal.Employee_Update();
}
fill_grd();
}
protected void grd_RowCommand(object sender, GridViewCommandEventArgs e)
{
int IDD = int.Parse(e.CommandArgument.ToString());
_bal.empid = IDD;
if (e.CommandName == "DEL")
{
_bal.Employee_delete();
fill_grd();
}
else if(e.CommandName=="EDT")
{
ds = new DataSet();
ds= _bal.Employee_Edit();
if (ds.Tables[0].Rows.Count > 0)
{
Textname.Text = ds.Tables[0].Rows[0]["name"].ToString();
Textaddress.Text = ds.Tables[0].Rows[0]["Address"].ToString();
Textage.Text = ds.Tables[0].Rows[0]["Age"].ToString();
btnsave.Text = "Update";
ViewState["EID"] = IDD;
}
}
}
protected void btnsearch_Click(object sender, EventArgs e)
{
_bal.name = textsearch.Text;
ds = new DataSet();
ds = _bal.Employee_serarch();
if (ds.Tables[0].Rows.Count > 0)
{
grd.DataSource = ds;
grd.DataBind();
}
else
{
grd.DataSource = null;
grd.DataBind();
}
}
}
}
Web.config page code:-
<appSettings>
<add key="DBCS" value="data source=Shiva;integrated security=true;initial catalog=db3tier9617"/>
</appSettings>
No comments:
Post a Comment