Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Modify record in xml from code behind on page load and unload events

Posted on 2009-04-06
2
Medium Priority
?
303 Views
Last Modified: 2013-12-17
When my web page opens, I want it to modify a value in an xml file based on what's in its Page.Title, and when the page unloads, modify that value to "Not Broadcasting". I'm having a real hard time figuring this one out--I am going about this all wrong!  Is there an Expert here that can help?
--------###CODE BEHIND###--------
Dim hashTableData As New Hashtable
Dim strWebcastName As String
 
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            'Reading xml file
            Dim doc As System.Xml.XmlDocument = New System.Xml.XmlDocument()
            doc.Load(Server.MapPath("~/App_Data/WebcastDemos.xml"))
            Dim list As System.Xml.XmlNodeList = doc.SelectNodes("Records/Record")
            For Each node As System.Xml.XmlNode In list
                hashTableData(node.Item("ID").FirstChild.Value) = node.Item("Data").FirstChild.Value
            Next
            ViewState("Records") = hashTableData
        End If
 
        ' we do this to avoid multiple cast
        Dim myTable As Hashtable = CType(ViewState("Records"), Hashtable)
    End Sub
 
    Protected Sub Page_LoadComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.LoadComplete
        strWebcastName = Page.Title
        Me.ModifyRecord()
    End Sub
 
    Protected Sub Page_Unload(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Unload
        strWebcastName = "Not Broadcasting"
        Me.ModifyRecord()
    End Sub
 
    Private Sub ModifyRecord()
        Dim key As String = ViewState("HashKey")
 
        CType(ViewState("Records"), Hashtable)(key) = strWebcastName
 
        Dim doc As System.Xml.XmlDocument = New System.Xml.XmlDocument()
        doc.Load(Server.MapPath("~/App_Data/WebcastDemos.xml"))
 
        Dim myNode As System.Xml.XmlNode = doc.SelectSingleNode("Records/Record[ID='" & key & "']")
        myNode("Data").InnerText = strWebcastName
 
        doc.Save(Server.MapPath("~/App_Data/WebcastDemos.xml"))
    End Sub

Open in new window

0
Comment
Question by:John Account
2 Comments
 
LVL 11

Accepted Solution

by:
Anurag Agarwal earned 2000 total points
ID: 24076543
Where you have set the value of ViewState("HashKey") ??
Anurag

0
 

Author Comment

by:John Account
ID: 24076855
I haven't. And I think the ViewState("HashKey") is completely unnecessary in this scenario, No? I mean, all I want to do is write to and modify a certain field in a certain record of the xml file, when opening the page, and then again when closing the page. So I shouldn't even need a ViewState, right? Just need a way to modify the value directly. Can you help?
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
Today I had a very interesting conundrum that had to get solved quickly. Needless to say, it wasn't resolved quickly because when we needed it we were very rushed, but as soon as the conference call was over and I took a step back I saw the correct …
this video summaries big data hadoop online training demo (http://onlineitguru.com/big-data-hadoop-online-training-placement.html) , and covers basics in big data hadoop .
Want to learn how to record your desktop screen without having to use an outside camera. Click on this video and learn how to use the cool google extension called "Screencastify"! Step 1: Open a new google tab Step 2: Go to the left hand upper corn…
Suggested Courses

886 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question