Load XML data to asp:GridView : GridView « XML « ASP.NET Tutorial






<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="XmlDataSet" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Untitled Page</title>
</head>
<body>
    <form id="form1" runat="server">
    
      <div class="Box">
        <asp:Button ID="cmdXmlToDataSet" runat="server" Text="Read XML into DataSet" OnClick="cmdXmlToDataSet_Click" Width="184px" />
        <asp:GridView ID="gridData" runat="server" EnableViewState="False" ></asp:GridView>
        
    </div>
    </form>
</body>
</html>

File: Default.aspx.cs

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.Web.Configuration;
using System.Xml;

public partial class XmlDataSet : System.Web.UI.Page
{
  protected void cmdXmlToDataSet_Click(object sender, EventArgs e)
  {
    XmlDataDocument dataDoc = new XmlDataDocument();
    dataDoc.DataSet.ReadXmlSchema("Data.xsd");
    dataDoc.Load("Data.xml");

    gridData.DataSource = dataDoc.DataSet;
    gridData.DataBind();
  }
}

File: Data.xml

<?xml version="1.0" standalone="yes"?>

<SuperProProductList xmlns="yourURI" >
    <Product ID="1" Name="Chair">
        <Price>49.33</Price>
    </Product>
    <Product ID="2" Name="Car">
        <Price>43398.55</Price>
    </Product>
    <Product ID="3" Name="Fresh Fruit Basket">
        <Price>49.99</Price>
    </Product>
</SuperProProductList>

File: Data.xsd

<?xml version="1.0"?>
<xs:schema
    targetNamespace="yourURI"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    elementFormDefault="qualified"  >
  <xs:element name="SuperProProductList">
    <xs:complexType>
      <xs:sequence maxOccurs="unbounded">
        <xs:element name="Product">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Price" minOccurs="1" type="xs:double" />
            </xs:sequence>
            <xs:attribute name="ID" use="required" type="xs:int" />
            <xs:attribute name="Name" use="required"  type="xs:string" />
          </xs:complexType>
        </xs:element>
        </xs:sequence>
      </xs:complexType>
  </xs:element>
</xs:schema>








25.4.GridView
25.4.1.Load XML data to asp:GridView
25.4.2.Nested GridView for display XML document