我有我的winform應用程序4個數據集,從我的數據庫中獲取值。值就像我的產品表中有多少產品以及有關類別的信息。我想知道如何將數據集信息保存在html頁面中。我想創建一個html模板,以便我可以很好地呈現信息。我怎樣才能做到這一點? Eny很好的指導,解釋如何做到這一點?C# - 創建HTML報告
4
A
回答
2
您可以將DataSet保存爲XML
,然後使用XSLT
對其進行轉換。
你可以在這個樣本來看一看:
5
這似乎是像RazorEngine一個偉大的工作。您可以定義使用剃刀語法模板,然後使用RazorEngine模板的服務,例如,呈現出內容:
@helper RenderItem(Item item) {
<tr>
<td>item.Name</td>
<td>item.Price</td>
</tr>
}
<html>
<head></head>
<body>
<table>
@foreach (Item item in Model.Items) {
@RenderItem(item)
}
</table>
</body>
</html>
1
我個人推薦(使用System.Xml.Linq的)
使用LINQ生成HTML到XML你甚至不需要使用嚴格的XHTML模式,但是你會從Xml.Linq中獲得里程堆積。下面是我自己的代碼庫的代碼段:
#region Table Dump Implementation
private static XNode Dump<T>(IEnumerable<T> items, IEnumerable<string> header, params Func<T, string>[] columns)
{
if (!items.Any())
return null;
var html = items.Aggregate(new XElement("table", new XAttribute("border", 1)),
(table, item) => {
table.Add(columns.Aggregate(new XElement("tr"),
(row, cell) => {
row.Add(new XElement("td", EvalColumn(cell, item)));
return row;
}));
return table;
});
html.AddFirst(header.Aggregate(new XElement("tr"),
(row, caption) => { row.Add(new XElement("th", caption)); return row; }));
return html;
}
private static XNode EvalColumn<T>(Func<T, string> cell, T item)
{
var raw = cell(item);
try
{
var xml = XElement.Parse(raw);
return xml;
}
catch (XmlException)
{
return new XText(raw);
}
}
#endregion
#region Dot Diagrams
public void LinkDiagram(Digraph graph, string id)
{
if (!graph.AllNodes.Any())
return;
var img = Path.GetFileName(GenDiagramFile(graph, _directory, id));
_body.Add(
new XElement("a",
new XAttribute("href", img),
new XElement("h4", "Link naar: " + graph.name),
new XElement("img",
new XAttribute("border", 1),
new XAttribute("src", img),
new XAttribute("width", "40%"))));
}
需要注意的是它非常易於使用的內嵌HTML文本以及(只要它是有效的XML),使用輔助,像這樣:
public void GenericAppend(string content)
{
if (!string.IsNullOrEmpty(content))
_body.Add(XElement.Parse(content));
}
0
你想要的東西很容易,所以你可能只是想直接生成HTML,並使用一些預先創建的CSS的樣式。但是,如果你想要更復雜的東西,請看看Windward Reports。
相關問題
- 1. C# - 創建報告
- 2. 使用C++創建HTML報告
- 3. 如何手動創建junit xml報告的html報告?
- 4. Jacoco IT報告創建,但沒有html
- 5. Django創建報告
- 6. php:創建報告
- 7. 如何在水晶報告c#中創建多個報告?
- 8. C#實體框架LINQ - 創建報告
- 9. C#用圖表創建報告
- 10. 如何創建報告庫?
- 11. 創建動態報告
- 12. 創建兩頁Rave報告
- 13. ACRA沒有創建報告
- 14. TestNG的:創建報告
- 15. 報告創建者類php
- 16. 使用TDD創建報告
- 17. 使用FastReport.Net創建報告
- 18. Selenium htmlsuite報告未創建
- 19. OpenERP報告創建失敗
- 20. SSRS報告沒有創建
- 21. 如何創建DevExpress報告
- 22. Microsoft Access報告創建
- 23. Excel宏報告創建
- 24. 如何創建RML報告?
- 25. 使用Java創建報告
- 26. 創建每日報告
- 27. 在SSRS中創建報告
- 28. Scalatest HTML報告
- 29. c#.net報告服務動態創建.rdlc報告的可選頁腳
- 30. 如何使用報告查看器創建多個頁面報告(c#)