Ho bisogno di confrontare due documenti xml.È meglio utilizzare XNodeEqualityComparer o XElement.DeepEquals per confrontare oggetti xml?
Si supponga che ognuno di carico del seguente XElement da un Stream
:
XElement actualElement = XElement.Load(actual);
XElement expectedElement = XElement.Load(expected);
che utilizzano tale, quale dei seguenti due è meglio:
XNodeEqualityComparer comparer = new XNodeEqualityComparer();
comparer.Equals(actualElement, expectedElement);
o
XElement.DeepEquals(actualElement, expectedElement);
I sappi che la seconda opzione è più breve, ma sono più interessato a capire se hai qualche spe miglioramenti o meglio/confronto più approfondito quando si utilizza uno o l'altro. Il confronto stesso deve confrontare gli elementi, gli attributi e tutti i valori tra i due documenti xml.
Grazie. Suppongo che se avessi effettivamente acceso Reflector e guardato XNodeEqualityComparer.Equals, avrei visto questo: public bool Equals (XNode x, XNode y) { return XNode.DeepEquals (x, y); }. Doh! – schellack