Edit

Share via


XNode.EqualityComparer Property

Definition

Gets a comparer that can compare two nodes for value equality.

public:
 static property System::Xml::Linq::XNodeEqualityComparer ^ EqualityComparer { System::Xml::Linq::XNodeEqualityComparer ^ get(); };
public static System.Xml.Linq.XNodeEqualityComparer EqualityComparer { get; }
static member EqualityComparer : System.Xml.Linq.XNodeEqualityComparer
Public Shared ReadOnly Property EqualityComparer As XNodeEqualityComparer

Property Value

A XNodeEqualityComparer that can compare two nodes for value equality.

Examples

The following example uses this property to retrieve an XNodeEqualityComparer, which implements the System.Collections.IEqualityComparer and System.Collections.Generic.IEqualityComparer<T> interfaces. It creates a dictionary that uses this property.

XElement xmlTree = new XElement("Root",
    new XElement("Child1", 1),
    new XElement("Child2", 2),
    new XElement("Child3", 3),
    new XElement("Child4", 4),
    new XElement("Child5", 5)
);

Dictionary<XNode, string> nodeDictionary = new Dictionary<XNode, string>(XNode.EqualityComparer);
nodeDictionary.Add(xmlTree.Element("Child5"), "Child 5 Information");
nodeDictionary.Add(xmlTree.Element("Child3"), "Child 3 Information");
nodeDictionary.Add(xmlTree.Element("Child1"), "Child 1 Information");

string str = nodeDictionary[xmlTree.Element("Child3")];
Console.WriteLine(str);
Dim xmlTree As XElement = _
        <Root>
            <Child1>1</Child1>
            <Child2>2</Child2>
            <Child3>3</Child3>
            <Child4>4</Child4>
            <Child5>5</Child5>
        </Root>

Dim nodeDictionary As Dictionary(Of XNode, String) = New Dictionary(Of XNode, String)(XNode.EqualityComparer)
nodeDictionary.Add(xmlTree.Element("Child5"), "Child 5 Information")
nodeDictionary.Add(xmlTree.Element("Child3"), "Child 3 Information")
nodeDictionary.Add(xmlTree.Element("Child1"), "Child 1 Information")

Dim str As String = nodeDictionary(xmlTree.Element("Child3"))
Console.WriteLine(str)

This example produces the following output:

Child 3 Information

Applies to

See also