Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Proprietà XPathNavigator.NavigatorComparer

 

Data di pubblicazione: ottobre 2016

Ottiene un'interfaccia IEqualityComparer usata per il confronto di uguaglianza di oggetti XPathNavigator.

Spazio dei nomi:   System.Xml.XPath
Assembly:  System.Xml (in System.Xml.dll)

public static IEqualityComparer NavigatorComparer { get; }

Valore proprietà

Type: System.Collections.IEqualityComparer

Interfaccia IEqualityComparer usata per il confronto di uguaglianza di oggetti XPathNavigator.

The P:System.Xml.XPath.XPathNavigator.NavigatorComparer property allows T:System.Xml.XPath.XPathNavigator objects to be compared on the basis of position rather than reference to the object. The M:System.Xml.XPath.XPathNavigator.ComparePosition(System.Xml.XPath.XPathNavigator) and Overload:System.Object.Equals methods implemented by this class are based on the position of the T:System.Xml.XPath.XPathNavigator objects passed as parameters. The M:System.Object.GetHashCode method implemented by this class uses the properties of the node such as its local name and namespace URI to create a hash code for the node.

The following example illustrates the use of the P:System.Xml.XPath.XPathNavigator.NavigatorComparer property.

XPathDocument document = new XPathDocument("books.xml");
XPathNavigator navigator = document.CreateNavigator();
Hashtable table = new Hashtable(XPathNavigator.NavigatorComparer);

// Add nodes to the Hashtable.
foreach (XPathNavigator navigator2 in navigator.Select("//book"))
{
    object value = navigator2.Evaluate("string(./title)");
    table.Add(navigator2.Clone(), value);
    Console.WriteLine("Added book with title {0}", value);
}

Console.WriteLine(table.Count);
Console.WriteLine("Does the Hashtable have the book \"The Confidence Man\"?");
Console.WriteLine(table.Contains(navigator.SelectSingleNode("//book[title='The Confidence Man']")));

The example takes the books.xml file as an input.


<?xml version="1.0" encoding="utf-8" ?> 
<bookstore>
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
        <title>The Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>

.NET Framework
Disponibile da 2.0
Silverlight
Disponibile da 4.0
Torna all'inizio
Mostra: