-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathHtmlMarkupService.cs
More file actions
53 lines (44 loc) · 1.44 KB
/
Copy pathHtmlMarkupService.cs
File metadata and controls
53 lines (44 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// ---------------------------------------------------
// Copyright (c) Jesus Fernandez. All Rights Reserved.
// ---------------------------------------------------
using System.Collections.Generic;
using System.Data;
using System.Text;
namespace PowerAutomate.Desktop.Modules.HTML.Actions;
public sealed class HtmlMarkupService : IHtmlMarkupService
{
public string ConvertDataTableToHtmlTable(DataTable dataTable)
{
var html = new StringBuilder();
html.Append("<table>");
html.Append("<tr>");
foreach (DataColumn column in dataTable.Columns)
{
html.Append("<th>").Append(column.ColumnName).Append("</th>");
}
html.Append("</tr>");
foreach (DataRow row in dataTable.Rows)
{
html.Append("<tr>");
foreach (var item in row.ItemArray)
{
html.Append("<td>").Append(item).Append("</td>");
}
html.Append("</tr>");
}
html.Append("</table>");
return html.ToString();
}
public string ConvertListToHtmlList(IEnumerable<object> items, bool isOrdered)
{
var rootTag = isOrdered ? "ol" : "ul";
var html = new StringBuilder();
html.Append($"<{rootTag}>");
foreach (var item in items)
{
html.Append("<li>").Append(item).Append("</li>");
}
html.Append($"</{rootTag}>");
return html.ToString();
}
}