Home
Manage Your Code
Snippet: Get DataSet as HTML String (C#)
Title: Get DataSet as HTML String Language: C#
Description: Returns a string that represents an in-memory DataSet as HTML Views: 717
Author: Nathan Prather Date Added: 10/30/2006
Copy Code  
1    private void GetDataSetAsHTML(DataSet dataSet)
2    {
3        // For each table in the DataSet, print the values of each row.
4        foreach (DataTable thisTable in dataSet.Tables)
5        {
6            System.Text.StringBuilder sb = new System.Text.StringBuilder();
7
8            sb.Append("<TABLE BORDER=1>");
9
10            sb.Append("<TR ALIGN='CENTER'>");
11            sb.Append("<TH ALIGN='CENTER'>DataTable's Name: ");
12            
13            sb.Append(thisTable.TableName);
14            
15            sb.Append("</TH>");
16            sb.Append("</TR>");
17            sb.Append("<TR ALIGN='CENTER'>");
18            sb.Append("<TD>");
19            
20            sb.Append(GetDataTableAsHTML(thisTable));
21
22            sb.Append("</TD>");
23            sb.Append("</TR>");
24            sb.Append("</TABLE>");
25        }
26    }
27
28    private string GetDataTableAsHTML(DataTable thisTable)
29    {
30        System.Text.StringBuilder sb = new System.Text.StringBuilder();
31
32        sb.AppendFormat(@"<caption> Total Rows =");
33        sb.AppendFormat(thisTable.Rows.Count.ToString());
34        sb.AppendFormat(@"  </caption>");
35        
36        sb.Append("<TABLE BORDER=1>");
37        
38        sb.Append("<TR ALIGN='CENTER'>");
39        
40        //first append the column names.
41        foreach (DataColumn column in thisTable.Columns)
42        {
43            sb.Append("<TD><B>");
44            sb.Append(column.ColumnName);
45            sb.Append("</B></TD>");
46        }
47        
48        sb.Append("</TR>");
49        
50        // next, the column values.
51        foreach (DataRow row in thisTable.Rows)
52        {
53            sb.Append("<TR ALIGN='CENTER'>");
54            
55            foreach (DataColumn column in thisTable.Columns)
56            {
57                sb.Append("<TD>");
58                if (row[column].ToString().Trim().Length > 0)
59                    sb.Append(row[column]);
60                else
61                    sb.Append(" ");
62                sb.Append("</TD>");
63            }
64
65            sb.Append("</TR>");
66        }
67        sb.Append("</TABLE>");
68        
69        return sb.ToString();
70    }