Mega Code Archive

 
Categories / ASP.Net / ADO Database
 

Define your own collection for ObjectDataSource

<%@ page language="C#" %> <%@ import namespace="System" %> <%@ import namespace="System.Web" %> <%@ import namespace="System.Collections.Generic" %> <script runat="server" language="c#"> 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; }     } } 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 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);     } } </script> <html> <head runat="server">     <title>Untitled Page</title> </head> <body>     <form runat="server">         <asp:gridview id="GridView1"                        runat="server"                        datasourceid="ObjectDataSource1">             <alternatingrowstyle backcolor="Red">             </alternatingrowstyle>             <pagerstyle forecolor="Black"                          font-italic="False"                          font-bold="False"                          horizontalalign="Center"                         backcolor="#999999">             </pagerstyle>             <selectedrowstyle forecolor="White"                                backcolor="#008A8C"                                font-italic="False"                                font-bold="True">             </selectedrowstyle>             <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">         </asp:objectdatasource>     </form> </body> </html>