We have the following XML data in an XML file named ‘Student.xml’. The XML is present in the root folder of our application.

  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <STUDENTS>
  3. <STUDENT>
  4. <StudentID>1</StudentID>
  5. <Name>John Smith</Name>
  6. <Marks>200</Marks>
  7. </STUDENT>
  8. <STUDENT>
  9. <StudentID>2</StudentID>
  10. <Name>Mark Johnson</Name>
  11. <Marks>300</Marks>
  12. </STUDENT>
  13. </STUDENTS>
We will display this data in a Gridview using C#. Create a web application. Add a webpage. Copy the following code in the .aspx page.
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ConvertXMLtoDatatable.aspx.cs" Inherits="ConvertDatatabletoXMLString.ConvertXMLtoDatatable" %>
  2. <!DOCTYPE html>
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head runat="server">
  5. <title></title>
  6. </head>
  7. <body>
  8. <form id="form1" runat="server">
  9. <div>
  10. <asp:GridView ID="Grddata" runat="server"></asp:GridView>
  11. </div>
  12. </form>
  13. </body>
  14. </html>
In the Code behind write the following code,
  1. using System;
  2. usingSystem.Collections.Generic;
  3. usingSystem.Data;
  4. usingSystem.Linq;
  5. usingSystem.Web;
  6. usingSystem.Web.UI;
  7. usingSystem.Web.UI.WebControls;
  8. namespaceConvertDatatabletoXMLString
  9. {
  10. public partial class ConvertXMLtoDatatable: System.Web.UI.Page
  11. {
  12. protected void Page_Load(object sender, EventArgs e)
  13. {
  14. if (!Page.IsPostBack)
  15. {
  16. ConvertXMLtoDataSet();
  17. }
  18. }
  19. protected void ConvertXMLtoDataSet()
  20. {
  21. DataSetobjDataSet;
  22. stringstrFileName = string.Empty;
  23. try
  24. {
  25. strFileName = Server.MapPath("Student.xml");
  26. objDataSet = new DataSet();
  27. objDataSet.ReadXml(strFileName);
  28. Grddata.DataSource = objDataSet;
  29. Grddata.DataBind();
  30. }
  31. catch (Exception Ex)
  32. {
  33. throw Ex;
  34. }
  35. finally
  36. {
  37. objDataSet = null;
  38. strFileName = string.Empty;
  39. }
  40. }
  41. }
  42. }
When we run the page we get the following output.



We have successfully converted XML to Dataset in C# and bound a Gridview with the dataset.