So verwenden Sie eine HTML-Vorlage
Eine HTML-Vorlage ist eine reguläre HTML-Datei, die einige spezielle Inline-Ausdrücke (Platzhalter) enthält, die die Zuordnung der Eingabedatenquelle zum HTML-Seiten-Markup angeben. Durch doppelte geschweifte Klammern gekennzeichnete Platzhalter geben Bereiche an, in denen tatsächliche Daten aus Datenquellen eingefügt werden sollen. Aspose.HTML für .NET bietet eine Reihe von ConvertTemplate() -Methoden zum Konvertieren der HTML-Vorlage in ein mit Daten gefülltes HTML-Dokument. Lassen Sie uns also herausfinden, wie Sie die HTML-Vorlage aus einer Datenquelle füllen und in eine HTML-Datei konvertieren.
Stellen Sie zunächst sicher, dass in Ihrem Projekt die Bibliothek Aspose.HTML für .NET installiert ist. Das geht ganz einfach. Sie können es über die NuGet Package Manager-Konsole mit dem folgenden Befehl installieren:
Installieren Sie Aspose.HTML für .NET
Install-Package Aspose.HTML
Datenquelle
Um ein HTML-Dokument aus einer Vorlage zu erstellen und zu füllen, benötigen Sie eine Datenquelle zum Auffüllen. Aspose.HTML stellt die Inline-Ausdruckssyntax für die Arbeit mit Vorlagen und verschiedenen Datenquellentypen wie XML und JSON bereit. Eine typische Datenquelle im XML-Format könnte wie folgt aussehen:
XML-Datenquelle
<Data>
<Persons>
<Person>
<FirstName>Sherlock</FirstName>
<LastName>Doe</LastName>
<Address>
<City>Dallas</City>
<Street>Main rd.</Street>
<Number>114</Number>
</Address>
<Telephone>012-5344-334</Telephone>
</Person>
<Person>
<FirstName>Jack</FirstName>
<LastName>Fox</LastName>
<Address>
<Number>25</Number>
<Street>Broadway</Street>
<City>New York</City>
</Address>
<Telephone>081-544-12-15</Telephone>
</Person>
</Persons>
</Data>
Vorlagen-Markup
Beim Vorlagen-Markup handelt es sich um einen Syntaxsatz, der zum Einbetten dynamischer Inhalte in eine HTML-Vorlage verwendet wird. Inline-Ausdrücke werden innerhalb des Vorlagen-Markups verwendet, um Code auszuführen oder dynamische Werte direkt im HTML-Dokument auszugeben. Hier sind einige einfache Regeln für die Vorbereitung einer HTML-Vorlage, die aus einer Datenquelle gefüllt werden soll:
- Der Datenbindungsausdruck wird verwendet, um Werte des Steuerelements basierend auf den in der Datenquelle enthaltenen Informationen mit der folgenden Syntax festzulegen: {{ Datenbindungsausdruck }}. Beispielsweise sind die Ausdrücke in der Vorlage, wie
{{FirstName}}, {{LastName}}, {{Address.Street}}, {{Address.Number}}
und{{Telephone}}
, Geben Sie die Felder aus der Datenquelle an, die in die entsprechenden Zellen der Tabelle eingefügt werden sollen. - Das Attribut
data_merge
gibt an, dass die Datenquelle eine Liste von Objekten ist und die Tabelle für jedes Objekt wiederholt werden sollte. - Der Direktivenausdruck
foreach
wird verwendet, um in Kombination mit einem Datenbindungsausdruck die Liste der Elemente zu durchlaufen.
Die Struktur einer HTML-Vorlage
<!DOCTYPE html>
<html lang="en">
<head>
<title>Person Information</title>
</head>
<body>
<table border=1 data_merge="{{#foreach Persons.Person}}">
<tr>
<th>Person</th>
<th>Address</th>
<th>Telephone</th>
</tr>
<tr>
<td>{{FirstName}} {{LastName}}</td>
<td>{{Address.Street}} {{Address.Number}}, {{Address.City}}</td>
<td>{{Telephone}} </td>
</tr>
</table>
</body>
</html>
Konvertieren Sie die Vorlage in HTML
Sobald Sie Ihre HTML-Vorlage und die Datenquelldatei fertig haben, können Sie sie zusammenführen, d. h. die Vorlage in eine mit Daten gefüllte HTML-Datei konvertieren. Aspose.HTML für .NET bietet eine Reihe von
ConvertTemplate()
-Methoden zum Konvertieren einer Vorlage in ein HTML-Dokument. Die Methoden benötigen mehrere Parameter und geben ein HTML-Dokument zurück. Verwenden wir die Methode
ConvertTemplate(HTMLDocument, TemplateData, TemplateLoadOptions, string
)
, die vier Parameter benötigt:
- Das Objekt
HTMLDocument
wird als Quelle für die Vorlage verwendet. - Das Objekt
TemplateData
enthält die Daten, die zum Auffüllen der Vorlage verwendet werden. - Das Objekt
TemplateLoadOptions
bietet Optionen zum Laden der Vorlage. - Ein
string
-Parameter wird verwendet, um den vollständigen HTML-Dateipfad als Ergebnis der Ausgabekonvertierung anzugeben.
C#-Code zum Konvertieren der Vorlage in eine HTML-Datei
using System.IO;
using Aspose.Html.Converters;
using Aspose.Html.Loading;
...
// Initialize an HTML document as a conversion source (HTML template)
var document = new HTMLDocument(Path.Combine(DataDir, "html-template.html"), new Configuration());
// Define a TemplateData object
var templateData = new TemplateData(Path.Combine(DataDir, "template-data.xml"));
// Define a default TemplateLoadOptions object
var options = new TemplateLoadOptions();
// Prepare a path to the result file
var resultPath = Path.Combine(OutputDir, "document.html");
// Convert template to HTML
Converter.ConvertTemplate(document, templateData, options, resultPath);
// Clear resources
document.Dispose();
Eine Tabelle, die mit Daten aus der obigen XML-Datei gefüllt ist und die HTML-Vorlage verwendet, sieht folgendermaßen aus:
Um mehr über die Aspose.HTML-API zu erfahren, besuchen Sie bitte unsere Dokumentation . Im Kapitel Working with HTML Templates finden Sie Informationen zum Füllen einer HTML-Vorlage aus XML- oder JSON-Datenquellen, zum Konvertieren einer Vorlage in HTML, zum Festlegen von Attributen in einer HTML-Vorlage usw So steuern Sie das Vorhandensein von Attributen beim Auffüllen von Vorlagen.
Andere unterstützte Editoren
Bearbeiten Sie Dateien in anderen Dateiformaten: