Powiąż SDT z niestandardową częścią Xml

W tym samouczku pokazano, jak powiązać znacznik dokumentu strukturalnego (SDT) z niestandardową częścią Xml za pomocą Aspose.Words dla .NET. Zestawy SDT umożliwiają dodawanie formantów zawartości strukturalnej do dokumentu programu Word, a komponenty CustomXmlParts umożliwiają przechowywanie niestandardowych danych XML skojarzonych z dokumentem.

Warunki wstępne

Aby skorzystać z tego samouczka, musisz mieć następujące elementy:

  • Zainstalowana biblioteka Aspose.Words dla .NET.
  • Podstawowa znajomość C# i XML.

Krok 1: Skonfiguruj katalog dokumentów

Rozpocznij od ustawienia ścieżki do katalogu dokumentów. Zastępować"YOUR DOCUMENT DIRECTORY" z rzeczywistą ścieżką do katalogu, w którym chcesz zapisać dokument.

string dataDir = "YOUR DOCUMENT DIRECTORY";

Krok 2: Utwórz dokument i plik CustomXmlPart

Utwórz nową instancjęDocument klasa i ACustomXmlPart do przechowywania niestandardowych danych XML. Niestandardowy kod XML powinien być w prawidłowym formacie XML. W tym przykładzie używamy prostego ciągu XML<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>");

Krok 3: Dodaj StructuredDocumentTag (SDT) do dokumentu

DodaćStructuredDocumentTag do dokumentu, aby służyć jako kontrola zawartości. OkreślićSdtType JakPlainText iMarkupLevel JakBlock aby utworzyć SDT na poziomie bloku.

StructuredDocumentTag sdt = new StructuredDocumentTag(doc, SdtType.PlainText, MarkupLevel.Block);
doc.FirstSection.Body.AppendChild(sdt);

Krok 4: Ustaw mapowanie XML dla SDT

Zamapuj SDT naCustomXmlPart za pomocąSetMapping metodaXmlMapping nieruchomość. OkreślićCustomXmlPart , wyrażenie XPath służące do zlokalizowania żądanego węzła XML i, jeśli to konieczne, przedrostek przestrzeni nazw. W tym przykładzie mapujemy SDT na/root[1]/text[1].

sdt.XmlMapping.SetMapping(xmlPart, "/root[1]/text[1]", "");

Krok 5: Zapisz dokument

Zapisz zmodyfikowany dokument w określonym katalogu za pomocąSave metoda. Podaj żądaną nazwę pliku z odpowiednim rozszerzeniem. W tym przykładzie zapisujemy dokument jako „WorkingWithSdt.BindSDTtoCustomXmlPart.doc”.

doc.Save(dataDir + "WorkingWithSdt.BindSDTtoCustomXmlPart.doc");

Przykładowy kod źródłowy dla Bind Sd Tto Custom Xml Part przy użyciu Aspose.Words dla .NET

	// Ścieżka do katalogu dokumentów
	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");

Otóż to! Pomyślnie powiązałeś SDT z CustomXmlPart w dokumencie Word przy użyciu Aspose.Words dla .NET.