Abfrage von Zellbereichen, die mit dem XML Map Pfad verbunden sind, mithilfe der Worksheet.XmlMapQuery Methode

Mögliche Verwendungsszenarien

Sie können mit Aspose.Cells mithilfe der Methode Worksheet.XmlMapQuery() Zellbereiche abfragen, die mit dem XML-Map-Pfad verknüpft sind. Wenn der Pfad vorhanden ist, gibt die Methode eine Liste der mit diesem Pfad verknüpften Zellbereiche in der XML-Map zurück. Der erste Parameter der Methode Worksheet.XmlMapQuery() gibt den XML-Elementpfad an und der zweite Parameter gibt an, welche XML-Map abgefragt werden soll.

Abfrage von Zellbereichen, die mit dem XML-Map-Pfad verbunden sind, mithilfe der Worksheet.XmlMapQuery-Methode

Der folgende Screenshot zeigt Microsoft Excel, das die XML-Map in der Beispiel-Excel-Datei anzeigt, die im Code verwendet wird. Der Code fragt die XML-Map zweimal ab und gibt die Liste der von der Methode Worksheet.XmlMapQuery() zurückgegebenen Zellbereiche in der Konsole aus, wie unten gezeigt.

todo:image_alt_text

Beispielcode

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
//Load sample Excel file having Xml Map
Workbook wb = new Workbook("sampleXmlMapQuery.xlsx");
//Access first XML Map
XmlMap xmap = wb.Worksheets.XmlMaps[0];
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Query Xml Map from Path - /MiscData
Console.WriteLine("Query Xml Map from Path - /MiscData");
ArrayList ret = ws.XmlMapQuery("/MiscData", xmap);
//Print returned ArrayList values
for (int i = 0; i < ret.Count; i++)
{
Console.WriteLine(ret[i]);
}
Console.WriteLine("");
//Query Xml Map from Path - /MiscData/row/Color
Console.WriteLine("Query Xml Map from Path - /MiscData/row/Color");
ret = ws.XmlMapQuery("/MiscData/row/Color", xmap);
//Print returned ArrayList values
for (int i = 0; i < ret.Count; i++)
{
Console.WriteLine(ret[i]);
}

Konsolenausgabe

Query Xml Map from Path - /MiscData

Aspose.Cells.CellArea(A1:A8)[0,0,7,0]

Aspose.Cells.CellArea(B1:B8)[0,1,7,1]

Aspose.Cells.CellArea(C1:C8)[0,2,7,2]

Aspose.Cells.CellArea(D1:D8)[0,3,7,3]

Aspose.Cells.CellArea(E1:E8)[0,4,7,4]

Query Xml Map from Path - /MiscData/row/Color

Aspose.Cells.CellArea(D1:D8)[0,3,7,3]

XML-Pfad aus Objektliste/Tabelle erhalten

XML-Daten können in Arbeitsblätter importiert werden. Manchmal wird der XML-Pfad aus den ListObjects des Arbeitsblatts benötigt. Diese Funktion steht in Excel zur Verfügung, indem ein Ausdruck wie Sheet1.ListObjects(1).XmlMap.DataBinding verwendet wird. Die gleiche Funktion ist in Aspose.Cells verfügbar, indem ListObject.XmlMap.DataBinding.Url aufgerufen wird. Das folgende Beispiel demonstriert diese Funktion. Die Vorlagendatei und andere Quelldateien können von den folgenden Links heruntergeladen werden:

  1. XML Data.xlsx
  2. Country List.xml
  3. Food List.xml
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Load XLSX file containing data from XML file
Workbook workbook = new Workbook("XML Data.xlsx");
// Access the first worksheet
Worksheet ws = workbook.Worksheets[0];
// Access ListObject from the first sheet
Aspose.Cells.Tables.ListObject listObject = ws.ListObjects[0];
// Get the url of the list object's xml map data binding
string url = listObject.XmlMap.DataBinding.Url;
// Display XML file name
Console.WriteLine(url);