次の方法で共有


XNode.EqualityComparer プロパティ

定義

2 つのノードの値が等しいかどうかを比較できる比較子を取得します。

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

プロパティ値

XNodeEqualityComparer

2 つのノードの値が等しいかどうかを比較できる XNodeEqualityComparer

次の例では、このプロパティを使用して、インターフェイスとSystem.Collections.Generic.IEqualityComparer<T>インターフェイスをXNodeEqualityComparer実装する System.Collections.IEqualityComparer 、を取得します。 このプロパティを使用するディクショナリが作成されます。

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)  

この例を実行すると、次の出力が生成されます。

Child 3 Information  

適用対象

こちらもご覧ください