CSharp Gridview With Objectdatasource – ADO.Net Database

<%@ page language="C#" %><%@ import namespace="System" %>
<%@ import namespace="System.Web" %>
<%@ import namespace="System.Collections.Generic" %><script runat="server" language="c#">
public class PersonManager {
    private const string personsKey = "persons";    public PersonCollection SelectPersons() {
        HttpContext context = HttpContext.Current;        if (context.Application[personsKey] == null) {
            PersonCollection persons = new PersonCollection();            persons.Add(new Person(0, "A", "B"));
            persons.Add(new Person(1, "C", "D"));
            persons.Add(new Person(2, "E", "F"));
            context.Application[personsKey] = persons;
        }        return (context.Application[personsKey] as PersonCollection);
    }    public Person SelectPerson(int id) {
        return this.SelectPersons().FindPersonById(id);
    }    public void DeletePerson(int Id) {
        HttpContext context = HttpContext.Current;
        PersonCollection persons = (context.Application[personsKey] as PersonCollection);        persons.Remove(Id);
    }    public void Update(int Id, string Firstname, string Lastname) {
        HttpContext context = HttpContext.Current;
        PersonCollection persons = (context.Application[personsKey] as PersonCollection);
        Person person = persons.FindPersonById(Id);        if (person != null) {
            person.Firstname = Firstname;
            person.Lastname = Lastname;
        }
    }
}public class PersonCollection : List<person> {    public void Remove(int id) {
        Person person = this.FindPersonById(id);
        if (person != null) {
            base.Remove(person);
        }
    }    public Person FindPersonById(int id) {
        foreach (Person person in this) {
            if (person.Id.Equals(id)) {
                return person;
            }
        }
        return null;
    }
}public class Person {    private int id;
    private string firstname;
    private string lastname;    public Person(int id, string firstname, string lastname) {
        this.id = id;
        this.firstname = firstname;
        this.lastname = lastname;
    }    public int Id {
        get { return this.id; }
        set { this.id = value; }
    }    public string Firstname {
        get { return this.firstname; }
        set { this.firstname = value; }
    }    public string Lastname {
        get { return this.lastname; }
        set { this.lastname = value; }
    }
}</script><html>
<head id="Head1" runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="Form1" runat="server">
        <asp:gridview id="GridView1"
                      runat="server"
                      datasourceid="ObjectDataSource1"
                      autogeneratecolumns="False"
                      datakeynames="Id">
            <alternatingrowstyle backcolor="Red" font-bold="False">
            </alternatingrowstyle>
            <pagerstyle forecolor="Black"
                        font-italic="False"
                        font-bold="False"
                        horizontalalign="Center"
                        backcolor="#999999">
            </pagerstyle>
            <columnfields>
                <asp:boundfield datafield="Id" readonly="True" headertext="ID">
                </asp:boundfield>
                <asp:boundfield datafield="Firstname" headertext="Firstname">
                </asp:boundfield>
                <asp:boundfield datafield="Lastname" headertext="Lastname">
                </asp:boundfield>
                <asp:commandfield showeditbutton="True">
                </asp:commandfield>
                <asp:commandfield showdeletebutton="True">
                </asp:commandfield>
            </columnfields>
            <summarytitlestyle borderwidth="1px"
                               borderstyle="None"
                               bordercolor="#999999"
                               backcolor="White">
            </summarytitlestyle>
            <selectedrowstyle forecolor="White"
                              backcolor="#008A8C"
                              font-italic="False"
                              font-bold="True">
            </selectedrowstyle>
            <detailtitlestyle borderwidth="1px"
                              borderstyle="None"
                              bordercolor="#999999"
                              backcolor="White">
            </detailtitlestyle>
            <rowstyle forecolor="Black" backcolor="#EEEEEE" font-italic="False" font-bold="False">
            </rowstyle>
            <headerstyle forecolor="White" backcolor="#000084" font-italic="False" font-bold="True">
            </headerstyle>
            <footerstyle forecolor="Black" backcolor="#CCCCCC" font-italic="False" font-bold="False">
            </footerstyle>
        </asp:gridview>
        <asp:objectdatasource id="ObjectDataSource1"
                              runat="server"
                              typename="PersonManager"
                              selectmethod="SelectPersons"
                              updatemethod="Update"
                              deletemethod="DeletePerson">
        </asp:objectdatasource>    </form>
</body>
</html>

Enjoyed this post? Share it!

 

Leave a comment

Your email address will not be published.