Binden Sie SDT an ein benutzerdefiniertes XML-Teil
In diesem Tutorial wird gezeigt, wie Sie mithilfe von Aspose.Words für .NET ein strukturiertes Dokument-Tag (SDT) an einen benutzerdefinierten XML-Teil binden. Mit SDTs können Sie einem Word-Dokument strukturierte Inhaltssteuerelemente hinzufügen, und CustomXmlParts bieten eine Möglichkeit, mit dem Dokument verknüpfte benutzerdefinierte XML-Daten zu speichern.
Voraussetzungen
Um diesem Tutorial folgen zu können, benötigen Sie Folgendes:
- Aspose.Words für .NET-Bibliothek installiert.
- Grundkenntnisse in C# und XML.
Schritt 1: Richten Sie das Dokumentenverzeichnis ein
Beginnen Sie mit der Einrichtung des Pfads zu Ihrem Dokumentenverzeichnis. Ersetzen"YOUR DOCUMENT DIRECTORY"
mit dem tatsächlichen Pfad zu dem Verzeichnis, in dem Sie das Dokument speichern möchten.
string dataDir = "YOUR DOCUMENT DIRECTORY";
Schritt 2: Erstellen Sie ein Dokument und ein CustomXmlPart
Erstellen Sie eine neue Instanz vonDocument
Klasse und aCustomXmlPart
um die benutzerdefinierten XML-Daten zu speichern. Das benutzerdefinierte XML sollte in einem gültigen XML-Format vorliegen. In diesem Beispiel verwenden wir einen einfachen XML-String<root><text>Hello, World!</text></root>
.
Document doc = new Document();
CustomXmlPart xmlPart = doc.CustomXmlParts.Add(Guid.NewGuid().ToString("B"), "<root><text>Hello, World!</text></root>");
Schritt 3: Fügen Sie dem Dokument ein StructuredDocumentTag (SDT) hinzu
Füge hinzu einStructuredDocumentTag
zum Dokument hinzugefügt, um als Inhaltskontrolle zu dienen. Präzisiere dasSdtType
alsPlainText
und dasMarkupLevel
alsBlock
um ein SDT auf Blockebene zu erstellen.
StructuredDocumentTag sdt = new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Block);
doc.FirstSection.Body.AppendChild(sdt);
Schritt 4: Legen Sie die XML-Zuordnung für das SDT fest
Ordnen Sie das SDT dem zuCustomXmlPart
durch die Verwendung derSetMapping
Methode derXmlMapping
Eigentum. Präzisiere dasCustomXmlPart
, den XPath-Ausdruck zum Suchen des gewünschten XML-Knotens und ggf. das Namespace-Präfix. In diesem Beispiel ordnen wir das SDT zu/root[1]/text[1]
.
sdt.XmlMapping.SetMapping(xmlPart, "/root[1]/text[1]", "");
Schritt 5: Speichern Sie das Dokument
Speichern Sie das geänderte Dokument mit im angegebenen VerzeichnisSave
Methode. Geben Sie den gewünschten Dateinamen mit der entsprechenden Dateierweiterung an. In diesem Beispiel speichern wir das Dokument als „WorkingWithSdt.BindSDTtoCustomXmlPart.doc“.
doc.Save(dataDir + "WorkingWithSdt.BindSDTtoCustomXmlPart.doc");
Beispielquellcode für Bind Sd Tto Custom Xml Part mit Aspose.Words für .NET
// Pfad zu Ihrem Dokumentenverzeichnis
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();
CustomXmlPart xmlPart =
doc.CustomXmlParts.Add(Guid.NewGuid().ToString("B"), "<root><text>Hello, World!</text></root>");
StructuredDocumentTag sdt = new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Block);
doc.FirstSection.Body.AppendChild(sdt);
sdt.XmlMapping.SetMapping(xmlPart, "/root[1]/text[1]", "");
doc.Save(dataDir + "WorkingWithSdt.BindSDTtoCustomXmlPart.doc");
Das ist es! Sie haben mit Aspose.Words für .NET erfolgreich ein SDT an ein CustomXmlPart in Ihrem Word-Dokument gebunden.