Help with using Gridview to save data in XML file


I have many questions on how to solve an issue, below are my following questions:

After I loading the grid with my Donorxml file.
1. How do I only add data in the grid if it doesn't already exist in Donor.xml? (If it does use the existing data to avoiding adding duplicate data)
2. If the data i enter in the grid is new, how do I save it in Donor.xml with a new ID?
3. When I select multiple rows in the grid and press Save, how do i save the IDs of the rows selected to my link.xml file
For  example when I enter:
In Grid1 ( three rows of data)
I need to save them in Donor.xml  while I create new IDs as shown below:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>














And  at the same time save the newly created IDs to one record in my Link.xmk filke






How do I modify the code to use a grid for multiple entries and saving their IDs to link.xml?

Code: (This code works for entering a single country in a textbox and saving it to Donor.xml and it's ID to Link.xml, as mentioned, now I need to be able to save multiple IDs in Link.xml after selecting multiple rows in a Grid)



        Dim MyDocDonor As XDocument = XDocument.Load(Application.StartupPath & "/Donor.xml")

        Dim LargestDonorID = (From el In MyDocDonor.Descendants("Donor") Select CInt(el.<DonorID>.Value)).ToList


        Dim CheckForItem = (From el In MyDocDonor.Descendants("Donor").Elements("Name") Select el.Value).ToList

        If Not CheckForItem.Contains(Me.TextBox1.Text.ToString) Then

            Dim xNew As XElement = New XElement("Donor")

            xNew.Add(New XElement("DonorID", (LargestDonorID.Last() + 1)))

            xNew.Add(New XElement("Name", Me.TextBox1.Text.ToString))


            MyDocDonor.Save(Application.StartupPath & "/Donor.xml")

        End If


        Dim MyDocLink As XDocument = XDocument.Load(Application.StartupPath & "/Link.xml")

        Dim LinkID = (From el In MyDocLink.Descendants("Link") Select CInt(el.<LinkID>.Value)).ToList


        Dim xNewLink As XElement = New XElement("Link")

        xNewLink.Add(New XElement("LinkID", (LinkID.Last() + 1)))

        xNewLink.Add(New XElement("DonorID", (LargestDonorID.Last() + 1)))


        MyDocLink.Save(Application.StartupPath & "/Link.xml")



Who is Participating?
Easwaran ParamasivamConnect With a Mentor Commented:
You can use Dataset's WriteXML method to create XML file from Gridview. Refer:

To form Link.xml traverse each row of the grid. Refer:

To avoid duplicate rows to be entered in a grid view refer
vcharlesAuthor Commented:

Thank you for the links but they did not address my issue with xml and, can you please help me with the code I posted in muy initial post, to help prevent entering duplicate data in a GriView using XML as a datasource?


vcharlesAuthor Commented:
Thank You!
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.