Convert Dataset Datatable or GridView to XML in ASP.Net using C#.Net or VB.Net
How to use WriteXml() in C#.Net or VB.Net

By
Advertisement
In this tutorial i am going to explain about how to convert dataset datatable or gridview into xml document in Asp.Net using C#.Net & VB.Net or How to use WriteXml() in C#.Net or VB.Net. It is achieved using DataTable.WriteXml() method in the System.Data namespace.
I have created a new empty website and added a webform to the website. And i have added a gridview to the webform and added a button. The button onclick event is linked with btnConvert_Click event handler. Below is the html markup used.

HTML Markup:

Convert Dataset Datatable or GridView to XML in ASP.Net using C#.Net or VB.Net How to use WriteXml() in C#.Net or VB.Net



In the code behind file on page load event i have created a datatable and inserted some sample records in that datatable and binded it to gridview and also i added it to viewstate. On the button click event i have read the datatable from viewstate and converted it xml using DataTable.WriteXml() method in the System.Data namespace. This methos convert the datatable into xml and stores it to the xml file mentioned as the parameter. Below is the code used.

C#.Net:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        DataTable dt = new DataTable("EmployeeDetails");
        // Columns to store personal details
        dt.Columns.Add("EmpId", typeof(int));
        dt.Columns.Add("Name", typeof(string));
        dt.Columns.Add("Qualification", typeof(string));

        // Columns to store location details
        dt.Columns.Add("Location", typeof(string));
        dt.Columns.Add("Branch", typeof(string));

        // Columns to store salary details
        dt.Columns.Add("Designation", typeof(string));
        dt.Columns.Add("Department", typeof(string));
        dt.Columns.Add("Salary", typeof(string));

        // Adding sample rows
        DataRow drow;
        dt.Rows.Add(1, "Arun", "BTech", "Bangalore", "Branch1", "Developer", 
            "Development Team", "$1000/Month");
        dt.Rows.Add(1, "Raghav", "BE", "Chennai", "Branch2", "Designer", 
            "Design Team", "$1500/Month");
        dt.Rows.Add(1, "Anthony", "BCA", "Bangalore", "Branch1", "Tester", 
            "Testing Team", "$2000/Month");
        dt.Rows.Add(1, "Saxena", "MTech", "Mumbai", "Branch2", "Project Manager", 
            "Development Team", "$2500/Month");
        dt.Rows.Add(1, "Xavier", "MBA", "Chennai", "Branch1", "Product Manager", 
            "Product Team", "$3000/Month");
        dt.Rows.Add(1, "Mustaffa", "MBA", "Mumbai", "Branch2", "Product Manager", 
            "Product Team", "$3500/Month");

        ViewState["Data"] = dt;
        //Binding datatable to grid view
        gvEmployeeDetails.DataSource = dt;
        gvEmployeeDetails.DataBind();
        
    }
    protected void btnConvert_Click(object sender, EventArgs e)
    {
        DataSet ds = new DataSet();
        DataTable dtxml = (DataTable)ViewState["Data"];
        ds.Tables.Add(dtxml);
        ds.WriteXml(Server.MapPath("employee.xml"));
        Response.Redirect("employee.xml");
    }
}

VB.Net:
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Data

Public Partial Class _Default
 Inherits System.Web.UI.Page
 Protected Sub Page_Load(sender As Object, e As EventArgs)
  Dim dt As New DataTable("EmployeeDetails")
  ' Columns to store personal details
  dt.Columns.Add("EmpId", GetType(Integer))
  dt.Columns.Add("Name", GetType(String))
  dt.Columns.Add("Qualification", GetType(String))

  ' Columns to store location details
  dt.Columns.Add("Location", GetType(String))
  dt.Columns.Add("Branch", GetType(String))

  ' Columns to store salary details
  dt.Columns.Add("Designation", GetType(String))
  dt.Columns.Add("Department", GetType(String))
  dt.Columns.Add("Salary", GetType(String))

  ' Adding sample rows
  Dim drow As DataRow
  dt.Rows.Add(1, "Arun", "BTech", "Bangalore", "Branch1", "Developer", _
   "Development Team", "$1000/Month")
  dt.Rows.Add(1, "Raghav", "BE", "Chennai", "Branch2", "Designer", _
   "Design Team", "$1500/Month")
  dt.Rows.Add(1, "Anthony", "BCA", "Bangalore", "Branch1", "Tester", _
   "Testing Team", "$2000/Month")
  dt.Rows.Add(1, "Saxena", "MTech", "Mumbai", "Branch2", "Project Manager", _
   "Development Team", "$2500/Month")
  dt.Rows.Add(1, "Xavier", "MBA", "Chennai", "Branch1", "Product Manager", _
   "Product Team", "$3000/Month")
  dt.Rows.Add(1, "Mustaffa", "MBA", "Mumbai", "Branch2", "Product Manager", _
   "Product Team", "$3500/Month")

  ViewState("Data") = dt
  'Binding datatable to grid view
  gvEmployeeDetails.DataSource = dt
  gvEmployeeDetails.DataBind()

 End Sub
 Protected Sub btnConvert_Click(sender As Object, e As EventArgs)
  Dim ds As New DataSet()
  Dim dtxml As DataTable = DirectCast(ViewState("Data"), DataTable)
  ds.Tables.Add(dtxml)
  ds.WriteXml(Server.MapPath("employee.xml"))
  Response.Redirect("employee.xml")
 End Sub
End Class

Output of how to convert dataset datatable or gridview into xml document in Asp.Net using C#.Net & VB.Net or How to use WriteXml() in C#.Net or VB.Net:
Output of how to convert dataset datatable or gridview into xml document in Asp.Net using C#.Net & VB.Net or How to use WriteXml() in C#.Net or VB.Net:

SourceCode of how to convert dataset datatable or gridview into xml document in Asp.Net using C#.Net & VB.Net or How to use WriteXml() in C#.Net or VB.Net:

SourceCode of how to convert dataset datatable or gridview into xml document in Asp.Net using C#.Net & VB.Net or How to use WriteXml() in C#.Net or VB.Net:

You May Also Like...

0 comments:

Post a Comment

Online Casino