XML ASP.Net

<%--
Beginning ASP.NET 1.0 with C# (Paperback)
by David Sussman, Chris Ullman, 
   Juan T. Llibre, John Kauffman, 
   Ollie Cornes, Ajoy Krishnamoorthy, 
   Srinivasa Sivakumar, Chris Goode, 
   Neil Raybould, Christopher Miller, 
   Rob Birdwell, Matt Butler, Gary Johnson 
   
# Publisher: Wrox Press; 1st edition (June 2002)
# Language: English
# ISBN: 1861007345
--%>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Globalization" %>

  void Page_Load(object sender, EventArgs e)
  {
    if (!(Page.IsPostBack))
    {
      EventData.DataSource = LoadMyCalendarData();
      EventData.DataBind();
    }
  }
  protected DataSet LoadMyCalendarData()
  {
     string sourceXml = Server.MapPath("MyCalendar.xml");
      if (!(File.Exists(sourceXml)))
      {
         return null;
      }
     DataSet cachedDataSet = (DataSet)Session["MyCalendarData"];
     if (!(cachedDataSet == null))
     {
        return cachedDataSet;
     }
    DataSet dataSet = new DataSet();
    try
    { 
       dataSet.ReadXml(sourceXml);
       Session["MyCalendarData"] = dataSet;
    }
    catch (Exception e)
    {
       ErrorMessage.Text = e.Message;
       dataSet = null;
    }
    return dataSet;
  }
  void DEDR_Edit(object sender, DataGridCommandEventArgs e)
  {
     EventData.EditItemIndex = Convert.ToInt32(e.Item.ItemIndex);
     EventData.DataSource = LoadMyCalendarData();
     EventData.DataBind();
  }
  void DEDR_Update(object sender, DataGridCommandEventArgs e)
  {
     DataSet dataSet  = LoadMyCalendarData();
     int row = Convert.ToInt32(e.Item.ItemIndex);
     TextBox EditText = null;
     EditText = (TextBox)e.Item.FindControl("txtShortDesc");
     dataSet.Tables[0].Rows[row]["ShortDesc"] = EditText.Text;
     EditText = (TextBox)e.Item.FindControl("txtDetailDesc");
     dataSet.Tables[0].Rows[row]["DetaiLDesc"] = EditText.Text;
     EditText = (TextBox)e.Item.FindControl("txtEventDate");
     dataSet.Tables[0].Rows[row]["EventDate"]= EditText.Text;
     EditText = (TextBox)e.Item.FindControl("txtStartTime");
     dataSet.Tables[0].Rows[row]["StartTime"] = EditText.Text;
     EditText = (TextBox)e.Item.FindControl("txtEndTime");
     dataSet.Tables[0].Rows[row]["EndTime"] = EditText.Text;
     dataSet.WriteXml(Server.MapPath("MyCalendar.xml"));
     Session["MyCalendarData"] = null;
     EventData.EditItemIndex = -1;
     EventData.DataSource = LoadMyCalendarData();
     EventData.DataBind();
  }
  void DEDR_Cancel(object sender, DataGridCommandEventArgs e)
  {
    EventData.EditItemIndex = -1;
    Session["MyCalendarData"] = null;
    EventData.DataSource = LoadMyCalendarData();
    EventData.DataBind();
  }
  void DEDR_Delete(object sender, DataGridCommandEventArgs e)
  {
    DataSet dataSet = LoadMyCalendarData();
    int row = Convert.ToInt32(e.Item.ItemIndex);
    dataSet.Tables[0].Rows[row].Delete();
    dataSet.WriteXml(Server.MapPath("MyCalendar.xml"));
    Session["MyCalendarData"] = null;
    EventData.EditItemIndex = -1;
    EventData.DataSource = LoadMyCalendarData();
    EventData.DataBind();
  }
  void DEDR_Add(object sender, EventArgs e)
  {
    DataSet dataSet = LoadMyCalendarData();
    DataRow newRow;
    newRow = dataSet.Tables[0].NewRow();
    newRow["ShortDesc"] = "";
    newRow["DetailDesc"] = "";
    newRow["EventDate"] = "";
    newRow["StartTime"] = "";
    newRow["EndTime"] = "";
    dataSet.Tables[0].Rows.Add(newRow);
    dataSet.WriteXml(Server.MapPath("MyCalendar.xml"));
    Session["MyCalendarData"] = null;
    EventData.DataSource = LoadMyCalendarData();
    EventData.DataBind();
    EventData.EditItemIndex = EventData.Items.Count - 1;
    EventData.DataSource = LoadMyCalendarData();
    EventData.DataBind();
  }


  
    
      
                 runat="server"/>
                 AutoGenerateColumns="false" width="100%" runat="server"
           OnEditCommand="DEDR_Edit"
           OnUpdateCommand="DEDR_Update"
           OnCancelCommand="DEDR_Cancel"
           OnDeleteCommand="DEDR_Delete">
                             Font-Bold="true"/>
        
        
        
          
            
              <%# DataBinder.Eval(Container.DataItem, "EventDate") %>
            

            
                                 Text='<%# DataBinder.Eval(Container.DataItem,"EventDate") %>'
                   runat="server"/>
            

          
          
            
              <%# DataBinder.Eval(Container.DataItem, "ShortDesc") %>
            

            
                                 Text='<%# DataBinder.Eval(Container.DataItem,"ShortDesc") %>'
                   runat="server"/>
            

          
          
            
              <%# DataBinder.Eval(Container.DataItem, "DetailDesc") %>
            

            
                               Text='<%# DataBinder.Eval(Container.DataItem, "DetailDesc") %>'
                   runat="server"/>
            

          
          
            
              <%# DataBinder.Eval(Container.DataItem, "StartTime") %>
            

            
                                 Text='<%# DataBinder.Eval(Container.DataItem, "StartTime") %>'
                   runat="server"/>
            

          
          
            
              <%# DataBinder.Eval(Container.DataItem, "EndTime") %>
            

            
                                 Text='<%# DataBinder.Eval(Container.DataItem, "EndTime") %>'
                   runat="server"/>
            

          
          
            
                                 runat="server"/>
                                 runat="server"/>
            

            
                                 runat="server"/>
                                 runat="server"/>
            

          

        

    
    
  

<%--


  
    Gig in Portland - Jazz Club
    This should be fun - playing J & T again - be sure to bring the charts.
    2002/07/02
    6:00PM
    11:30PM
  

  
     Rehearsal - Brigadoon
    Community Theatre orchestra rehearsal - bring mutes.
    2002/07/14
    3:30PM
    6:30PM
  

  
    .NET Training Class
    This should be fun - we'll explore some of the really cool stuff, like ASP.NET server controls and Web Services.
    2002/07/17
    8:00AM
    4:30PM
  

  
    Writing Workshop for Musical Project with Gregg
    We're going to brainstorm some ideas and see if we can come up with something great.  We're off to a good start.
    2002/07/19
    10:00AM
    6:30PM
  

  
    Community Band
    Central park - we'll play everything from standards to shows tunes to classical to marches - you name it.  People bring their lawn chairs, eat their dinner, kids play - a great time!
    2002/07/24
    7:00PM
    9:00PM
  

  
    Jam Session at the Beach
    Bring more food this time and the crab nets - and the instruments!  We'll might stay for a week or so depending on the weather.
    2002/07/21
    8:00AM
    11:30PM
  

  
    Rob's Birthday!
    Nothing too fancy - just friends and family.  Hope it's a nice day - bike ride would be fun.
    2002/07/30
    6:09PM
    11:30PM
  

  
    
    
    
    
    
  

  
    Event
    Number 
    Wrox
    6.00
    11.30
  


--%>