Reader Level:

Pull XML Data Out Into Grid

By Vijay Prativadi on Oct 17 2012
Today, in this article let’s play around with one of the interesting and most useful concepts in XML in C#.
    • Like
    • Love It
    • Awesome
    • Interesting
    • It's Okay
    • Thumbs Down
  • 4.7k
  • 0


Today, in this article let's play around with one of the interesting and most useful concepts in XML in C#.

Question: What is pulling XML data out into grid?

In simple terms "It provides flexibility to pull out the data from XML and bind the data into a grid."

Step 1: Create a new "ASP.NET Web Application", as in:


Step 2: The complete code of Employee.xml looks like this:


<?xml version="1.0" encoding="utf-8" ?>















Step 3:
The complete code of webform1.aspx looks like this:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="SelectXMLDataApp._Default" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

<html xmlns="">

<head id="Head1" runat="server">




    <form id="form1" runat="server">





                    <td colspan="2">

                        <asp:Label ID="Label1" runat="server" Text="Pull XML Data out into Grid" Font-Bold="true"

                            Font-Size="Large" Font-Names="Verdana" ForeColor="Maroon"></asp:Label>




                    <td colspan="2" align="center">

                        <asp:Button ID="Button1" runat="server" Text="Pull XML Data" Font-Names="Verdana"

                            Width="213px" BackColor="Orange" Font-Bold="True" OnClick="Button1_Click" />




                    <td colspan="2" align="center">

                        <br />

                        <asp:GridView ID="GridView1" runat="server" BackColor="LightGoldenrodYellow" BorderColor="Tan"

                            BorderWidth="1px" CellPadding="2" EnableModelValidation="True" ForeColor="Black"

                            GridLines="None" AutoGenerateColumns="False">

                            <AlternatingRowStyle BackColor="PaleGoldenrod"></AlternatingRowStyle>

                            <FooterStyle BackColor="Tan"></FooterStyle>

                            <HeaderStyle BackColor="Tan" Font-Bold="True"></HeaderStyle>

                            <PagerStyle HorizontalAlign="Center" BackColor="PaleGoldenrod" ForeColor="DarkSlateBlue">


                            <SelectedRowStyle BackColor="DarkSlateBlue" ForeColor="GhostWhite"></SelectedRowStyle>


                                <asp:BoundField DataField="Id" HeaderText="Emp Id" ReadOnly="true" />

                                <asp:BoundField DataField="FirstName" HeaderText="First Name" />

                                <asp:BoundField DataField="LastName" HeaderText="LastName" />

                                <asp:BoundField DataField="Age" HeaderText="Age" />











Step 4:
The complete code of webform1.aspx.cs looks like this:


using System;

using System.Collections.Generic;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.IO;

using System.Xml;

namespace SelectXMLDataApp


    public partial class _Default : System.Web.UI.Page


        protected void Page_Load(object sender, EventArgs e)



        protected void Button1_Click(object sender, EventArgs e)


            XmlTextReader objTextReader = new XmlTextReader(Server.MapPath("Employee.xml"));

            XmlDataDocument objDocument = new XmlDataDocument();

            objDocument.DataSet.ReadXml(objTextReader, XmlReadMode.InferSchema);

            DataSet objDataSet = objDocument.DataSet;

            GridView1.DataSource = objDataSet;





Step 5:
The output of the application looks like this:


Step 6: The pulled out data from XML looks like this:


I hope this article is useful for you.