CRUD Operation In ASP.NET Web Form with Stored Procedure in C# ASP.NET
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;
using System.Globalization;
namespace CRUD_StoredProcedure
{
public partial class StudentInfo : System.Web.UI.Page
{
string cs = ConfigurationManager.ConnectionStrings["dbCon"].ConnectionString;
SqlConnection con;
SqlCommand cmd;
SqlDataAdapter adapter;
DataTable dt;
public void DataLoad()
{
if (Page.IsPostBack)
{
dgViewStudents.DataBind();
}
}
public void ClearAllData()
{
txtName.Text = "";
txtEmail.Text = "";
txtDOB.Text = DateTime.Today.Date.ToString();
ddlGender.SelectedValue = ddlGender.Items[0].ToString();
chkBoxAgree.Checked = false;
lblMessage.Text = "";
}
protected void Page_Load(object sender, EventArgs e)
{
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
lblSID.Text = dgViewStudents.SelectedRow.Cells[1].Text;
txtName.Text = dgViewStudents.SelectedRow.Cells[2].Text;
txtEmail.Text = dgViewStudents.SelectedRow.Cells[3].Text;
ddlGender.Text = dgViewStudents.SelectedRow.Cells[4].Text;
txtDOB.Text = dgViewStudents.SelectedRow.Cells[5].Text;
}
protected void btnAdd_Click(object sender, EventArgs e)
{
try
{
if (txtName.Text != "" && txtEmail.Text != "" && chkBoxAgree.Checked)
{
using (con = new SqlConnection(cs))
{
string name = txtName.Text;
string email = txtEmail.Text;
string gender = ddlGender.SelectedValue;
DateTime dt = DateTime.Parse(txtDOB.Text).Date;
string dateOnly = dt.ToString("MM-dd-yyyy");
con.Open();
cmd = new SqlCommand("StudentsAdd_SP", con);
cmd.CommandType = CommandType.StoredProcedure;
//cmd = new SqlCommand("INSERT INTO Students(Name,Email,Gender,BirthDate) VALUES(@Name,@Email,@Gender,@BirthDate)", con);
cmd.Parameters.AddWithValue("@Name", txtName.Text);
cmd.Parameters.AddWithValue("@Email", txtEmail.Text);
cmd.Parameters.AddWithValue("@Gender", ddlGender.SelectedValue);
cmd.Parameters.AddWithValue("@BirthDate", dateOnly);
cmd.ExecuteNonQuery();
DataLoad();
ClearAllData();
}
}
else
{
lblMessage.Text = "Fill All Information";
}
}
catch (Exception ex)
{
Console.WriteLine("Exception: " + ex.ToString());
}
}
protected void btnUpdate_Click(object sender, EventArgs e)
{
try
{
if (txtName.Text != "" && txtEmail.Text != "" && chkBoxAgree.Checked)
{
using (con = new SqlConnection(cs))
{
con.Open();
//cmd = new SqlCommand("UPDATE Students SET Name=@Name,Email=@Email,Gender=@Gender,BirthDate=@BirthDate WHERE StudentID=@StudentID", con);
cmd = new SqlCommand("StudentsUpdate_SP",con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Name", txtName.Text);
cmd.Parameters.AddWithValue("@Email", txtEmail.Text);
cmd.Parameters.AddWithValue("@Gender", ddlGender.SelectedValue);
cmd.Parameters.AddWithValue("@BirthDate", txtDOB.Text);
cmd.Parameters.AddWithValue("@StudentID", lblSID.Text);
cmd.ExecuteNonQuery();
DataLoad();
ClearAllData();
}
}
else
{
lblMessage.Text = "Fill All Information";
}
}
catch (Exception ex)
{
Console.WriteLine("Exception: " + ex.ToString());
}
}
protected void btnDelete_Click(object sender, EventArgs e)
{
try
{
using (con = new SqlConnection(cs))
{
con.Open();
//cmd = new SqlCommand("DELETE FROM Students WHERE StudentID=@StudentID",con);
cmd = new SqlCommand("StudentsDelete_SP",con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@StudentID",lblSID.Text);
cmd.ExecuteNonQuery();
DataLoad();
ClearAllData();
}
}
catch (Exception ex)
{
Console.WriteLine("Exception: " + ex.ToString());
}
}
protected void btnCancel_Click(object sender, EventArgs e)
{
ClearAllData();
}
}
}
Above File is CRUD_StoredProcedure\StudentInfo.aspx.cs
<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="StudentInfo.aspx.cs" Inherits="CRUD_StoredProcedure.StudentInfo" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<br/><br/><br/>
<table class="w-100">
<tr>
<td colspan="2">
<asp:Label ID="IbITitle" runat="server" Text="Student Information"></asp:Label>
</td>
<td></td>
<td></td>
</tr>
<tr>
<td style="width: 245px">
<asp:Label ID="IbIName" runat="server" Text="Name"></asp:Label>
</td>
<td>
<asp:TextBox ID="txtName" runat="server" Width="223px"></asp:TextBox>
</td>
<td colspan="2" rowspan="8">
<asp:GridView ID="dgViewStudents" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="StudentID" DataSourceID="SqlDataSource1" Height="218px" Width="419px" OnSelectedIndexChanged="GridView1_SelectedIndexChanged">
<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True" />
<asp:BoundField DataField="StudentID" HeaderText="StudentID" InsertVisible="False" ReadOnly="True" SortExpression="StudentID" />
<asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
<asp:BoundField DataField="Email" HeaderText="Email" SortExpression="Email" />
<asp:BoundField DataField="Gender" HeaderText="Gender" SortExpression="Gender" />
<asp:BoundField DataField="BirthDate" HeaderText="BirthDate" SortExpression="BirthDate" DataFormatString="{0:MM/dd/yyyy}"/>
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:StudentInformationConnectionString %>" DeleteCommand="DELETE FROM [Students] WHERE [StudentID] = @StudentID" InsertCommand="INSERT INTO [Students] ([Name], [Email], [Gender], [BirthDate]) VALUES (@Name, @Email, @Gender, @BirthDate)" ProviderName="<%$ ConnectionStrings:StudentInformationConnectionString.ProviderName %>" SelectCommand="SELECT * FROM [Students]" UpdateCommand="UPDATE [Students] SET [Name] = @Name, [Email] = @Email, [Gender] = @Gender, [BirthDate] = @BirthDate WHERE [StudentID] = @StudentID">
<DeleteParameters>
<asp:Parameter Name="StudentID" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Gender" Type="String" />
<asp:Parameter DbType="Date" Name="BirthDate" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Gender" Type="String" />
<asp:Parameter DbType="Date" Name="BirthDate" />
<asp:Parameter Name="StudentID" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
</td>
</tr>
<tr>
<td style="width: 245px">
<asp:Label ID="IbIEmail" runat="server" Text="Email"></asp:Label>
</td>
<td>
<asp:TextBox ID="txtEmail" runat="server" Width="223px"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width: 245px">
<asp:Label ID="IbIGender" runat="server" Text="Gender"></asp:Label>
</td>
<td>
<asp:DropDownList ID="ddlGender" runat="server">
<asp:ListItem>Male</asp:ListItem>
<asp:ListItem>Female</asp:ListItem>
<asp:ListItem>Others</asp:ListItem>
</asp:DropDownList>
</td>
</tr>
<tr>
<td style="width: 245px">
<asp:Label ID="IbIDOB" runat="server" Text="Date Of Birth"></asp:Label>
</td>
<td>
<asp:TextBox ID="txtDOB" runat="server" Width="223px" TextMode="Date"></asp:TextBox>
</td>
</tr>
<tr>
<td style="width: 245px"></td>
<td>
<asp:CheckBox ID="chkBoxAgree" runat="server" Text="Yes, I Agree!"/>
<asp:Label ID="lblMessage" runat="server" Text=""></asp:Label>
</td>
</tr>
<tr>
<td style="width: 245px">
<asp:Label ID="lblSID" runat="server" Text=""></asp:Label>
</td>
<td></td>
</tr>
<tr>
<td style="width: 245px"></td>
<td>
<asp:Button ID="btnAdd" runat="server" Text="Add" OnClick="btnAdd_Click"/>
<asp:Button ID="btnUpdate" runat="server" Text="Update" OnClick="btnUpdate_Click"/>
<asp:Button ID="btnDelete" runat="server" Text="Delete" OnClick="btnDelete_Click"/>
<asp:Button ID="btnCancel" runat="server" Text="Cancel Operation" OnClick="btnCancel_Click"/>
</td>
</tr>
<tr>
<td style="width: 245px"></td>
<td></td>
</tr>
<tr>
<td style="width: 245px"></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="width: 245px"></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td style="width: 245px"></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
</asp:Content>
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
.png)
Comments
Post a Comment