Presentation Layer .



In this session we will create presentation  layer . First we need to add reference from both BLL and DLL layers . I added the web pages into presentation layer . One is for insert new student records and rest two is update and delete operations .

Here is the screen shot of the web page .


Double the submit button to generate the event . copy and paste following codes .

 protected void btnYES_Click(object sender, EventArgs e)
    {
        Student student = new Student();

        student.Student_Name = txtLName.Text;
        student.Address = txtFName.Text;
        student.Email = txtTitle.Text;
        student.Mobile = txtAddress.Text;
       

        StudentHandler studentHandler = new StudentHandler();

        if (studentHandler.AddNewStudent(student) == true)
        {
            Label1.Text = "Student Record is Addedd";
        }

    }


Here is the HTML Code to retrieve the list of students ..


  <%@ Page Language="C#" AutoEventWireup="true" CodeFile="ListOfStudent.aspx.cs" Inherits="ListOfStudent" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
   <form id="form1" runat="server">
        <div>
            <h3>
                List of all the Students</h3>
            <br />
            <asp:GridView ID="GridView1" runat="server" CellPadding="4" ForeColor="#333333" AutoGenerateColumns="False"
                AutoGenerateEditButton="True" OnRowCancelingEdit="GridView1_RowCancelingEdit"
                OnRowEditing="GridView1_RowEditing" OnRowUpdating="GridView1_RowUpdating" BorderColor="Silver"
                BorderStyle="Solid" BorderWidth="1px">
                <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                <RowStyle BackColor="#EFF3FB" />
                <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
                <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
                <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
                <EditRowStyle BackColor="#2461BF" />
                <AlternatingRowStyle BackColor="White" />
                <Columns>
                    <asp:TemplateField HeaderText="StudentID">
                        <EditItemTemplate>
                            <asp:Label ID="lblID" runat="server" Text='<%# Eval("StudentID") %>'></asp:Label>
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:Label ID="Label1" runat="server" Text='<%# Bind("StudentID") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Name">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtName" runat="server" Text='<%# Bind("Student_Name") %>' Width="100px"></asp:TextBox>
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:Label ID="Label2" runat="server" Text='<%# Bind("Student_Name") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="Address">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtAddress" runat="server" Text='<%# Bind("Address") %>' Width="100px"></asp:TextBox>
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:Label ID="Label3" runat="server" Text='<%# Bind("Address") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="EmailID">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtEmailID" runat="server" Text='<%# Bind("Email") %>' Width="100px"></asp:TextBox>
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:Label ID="Label4" runat="server" Text='<%# Bind("Email") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                   
                    <asp:TemplateField HeaderText="Mobile">
                        <EditItemTemplate>
                            <asp:TextBox ID="txtMobile" runat="server" Text='<%# Bind("Mobile") %>' Width="100px"></asp:TextBox>
                        </EditItemTemplate>
                        <ItemTemplate>
                            <asp:Label ID="Label6" runat="server" Text='<%# Bind("Mobile") %>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    
                    <asp:HyperLinkField Text="Delete" DataNavigateUrlFields="StudentID" DataNavigateUrlFormatString="~/StudentDelete.aspx?id={0}" />
                </Columns>
            </asp:GridView>
            &nbsp;&nbsp;&nbsp;
            <br />
            <br />
            <asp:Button ID="Button1" runat="server" Text="Add New Student" OnClick="Button1_Click" /><br />
            <br />
            <asp:Label ID="lblResult" runat="server" Text=""></asp:Label></div>
    </form>
</body>
</html>

Here is code for retrieving list of student .

 public partial class ListOfStudent : System.Web.UI.Page
{
    StudentHandler studentHandler = null;

    protected void Page_Load(object sender, EventArgs e)
    {
        lblResult.Text = string.Empty;
        studentHandler = new StudentHandler();
        if (IsPostBack == false)
        {
            BindData();
        }
    }

        private void BindData()
        {
            GridView1.DataSource = studentHandler.GetStudentList();
            GridView1.DataBind();
        }





    protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
    {
        GridView1.EditIndex = e.NewEditIndex;
        BindData();
    }

    protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
        GridView1.EditIndex = -1;
        BindData();
    }

    protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
        Label lblID = GridView1.Rows[e.RowIndex].FindControl("lblID") as Label;

        TextBox txtLastName = GridView1.Rows[e.RowIndex].FindControl("txtName") as TextBox;
        TextBox txtFirstName = GridView1.Rows[e.RowIndex].FindControl("txtAddress") as TextBox;
        TextBox txtTitle = GridView1.Rows[e.RowIndex].FindControl("txtEmailID") as TextBox;
        TextBox txtAddress = GridView1.Rows[e.RowIndex].FindControl("txtMobile") as TextBox;
       


        if (lblID != null && txtLastName != null && txtFirstName != null && txtTitle != null &&
            txtAddress != null )
        {
            Student  student = new Student();

            student.StudentID = Convert.ToInt32(lblID.Text.Trim());
            student.Student_Name = txtLastName.Text;
            student.Address = txtFirstName.Text;
            student.Email = txtTitle.Text;
            student.Mobile = txtAddress.Text;
          

            //Let us now update the database
            if (studentHandler.UpdateStudent(student) == true)
            {
                lblResult.Text = "Record Updated Successfully";
            }
            else
            {
                lblResult.Text = "Failed to Update record";
            }

            //end the editing and bind with updated records.
            GridView1.EditIndex = -1;
            BindData();
        }
    }

    protected void Button1_Click(object sender, EventArgs e)
    {

    }
}


Here is the Html screen shot for delete web page  ..



Here is the code behind..

 public partial class StudentDelete : System.Web.UI.Page
{
    StudentHandler studentHandler = null;
    int studentID = 0;

    protected void Page_Load(object sender, EventArgs e)
    {
        string id = Request.QueryString["id"] as string;

        if (id == null)
        {
            Response.Redirect("Default.aspx");
        }

        try
        {
            studentID = Convert.ToInt32(id.Trim());
            studentHandler = new StudentHandler();

            Student student = studentHandler.GetStudentDetails(studentID);

            lblStudentID.Text = student.StudentID.ToString();
            lblName.Text = student.Student_Name;
            lblAddress.Text = student.Address;
            lblEmail.Text = student.Email;
            lblMobile.Text = student.Mobile;
            
        }
        catch (Exception)
        {
            Response.Redirect("Default.aspx");
        }
    }
    protected void btnNO_Click(object sender, EventArgs e)
    {
        Response.Redirect("Default.aspx");
    }

    protected void btnYES_Click(object sender, EventArgs e)
    {
        if (studentHandler.DeleteStudent(studentID) == true)
        {
            Response.Redirect("StudentDelete.aspx");
        }
    }
}




No comments:

Post a Comment