<?xml version="1.0" encoding="utf-8" ?>
<users>
<user>
<FirstName>Suresh</FirstName>
<LastName>Dasari</LastName>
<UserName>SureshDasari</UserName>
<Job>
<Role>Team Leader</Role>
</Job>
</user>
<user>
<FirstName>Mahesh</FirstName>
<LastName>Dasari</LastName>
<UserName>MaheshDasari</UserName>
<Job>
<Role>SOftware Developer</Role>
</Job>
</user>
<user>
<FirstName>Madhav</FirstName>
<LastName>Yemineni</LastName>
<UserName>MadhavYemineni</UserName>
<Job>
<Role>Business Analyst</Role>
</Job>
</user>
</users>
|
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Read XML Node values and bind data to gridview</title>
</head>
<body>
<form id="form1"
runat="server">
<asp:GridView ID="gvDetails"
runat="server">
<HeaderStyle BackColor="#df5015" Font-Bold="true" ForeColor="White" />
</asp:GridView>
</form>
</body>
</html>
|
using System;
using System.Data;
using System.Xml;
|
protected void
Page_Load(object sender, EventArgs e)
{
if(!IsPostBack)
{
//Bind Data to Gridview
GetXMLData();
}
}
// This method is used to get xml
node values and bind to gridview
protected void
GetXMLData()
{
DataTable dt = new DataTable();
dt.Columns.Add("FirstName",
typeof(string));
dt.Columns.Add("LastName",
typeof(string));
dt.Columns.Add("UserName",
typeof(string));
dt.Columns.Add("Role",
typeof(string));
XmlDocument xmldoc = new
XmlDocument();
xmldoc.Load(Server.MapPath("SampleXML.xml"));
XmlNodeList nodeList = xmldoc.SelectNodes("/users/user");
foreach (XmlNode
node in nodeList)
{
DataRow dtrow = dt.NewRow();
dtrow["FirstName"]
= node["FirstName"].InnerText;
dtrow["LastName"]
= node["LastName"].InnerText;
dtrow["UserName"]
= node["UserName"].InnerText;
dtrow["Role"]
= node["Job"]["Role"].InnerText;
dt.Rows.Add(dtrow);
}
gvDetails.DataSource = dt;
gvDetails.DataBind();
}
|
Imports System.Data
Imports System.Xml
Partial Class
Default
Inherits System.Web.UI.Page
Protected Sub
Page_Load(ByVal sender As Object, ByVal e As
EventArgs) Handles Me.Load
If Not IsPostBack Then
'Bind Data to Gridview
GetXMLData()
End If
End Sub
' This method is used to get xml
node values and bind to gridview
Protected Sub
GetXMLData()
Dim dt As New DataTable()
dt.Columns.Add("FirstName",
GetType(String))
dt.Columns.Add("LastName",
GetType(String))
dt.Columns.Add("UserName",
GetType(String))
dt.Columns.Add("Role",
GetType(String))
Dim xmldoc As New XmlDocument()
xmldoc.Load(Server.MapPath("SampleXML.xml"))
Dim nodeList As XmlNodeList =
xmldoc.SelectNodes("/users/user")
For Each node As XmlNode In
nodeList
Dim dtrow As DataRow =
dt.NewRow()
dtrow("FirstName")
= node("FirstName").InnerText
dtrow("LastName")
= node("LastName").InnerText
dtrow("UserName")
= node("UserName").InnerText
dtrow("Role")
= node("Job")("Role").InnerText
dt.Rows.Add(dtrow)
Next
gvDetails.DataSource = dt
gvDetails.DataBind()
End Sub
End Class
|
|
|
If you enjoyed this post, please support the blog below. It's FREE! Get the latest Asp.net, C#.net, VB.NET, jQuery, Plugins & Code Snippets for FREE by subscribing to our Facebook, Twitter, RSS feed, or by email. |
|||
Subscribe by RSS
Subscribe by Email
|
|||
|
|


Subscribe by RSS
Subscribe by Email
2 comments :
Fabulous Work Brother .........Thanx for all ur posts...
thanks a lot suresh!!!!
i struggle for this three days finally i get it...