DTSXMLDiffAlgorithm Enumeration
Specifies which algorithm to use when comparing XML documents.
Namespace:  Microsoft.SqlServer.Dts.Tasks.XMLTask
Assembly:  Microsoft.SqlServer.XMLTask (in Microsoft.SqlServer.XMLTask.dll)
Syntax
'Declaration
Public Enumeration DTSXMLDiffAlgorithm
'Usage
Dim instance As DTSXMLDiffAlgorithm
public enum DTSXMLDiffAlgorithm
public enum class DTSXMLDiffAlgorithm
type DTSXMLDiffAlgorithm
public enum DTSXMLDiffAlgorithm
Members
| Member name | Description | |
|---|---|---|
| Auto | Default. Chooses the comparison algorithm for you depending on the size and assumed number of changes in the compared documents. | |
| Fast | Compares the two XML documents by traversing the XML tree and comparing it node-by-node. This algorithm is very fast but may produce less precise results. For example, it may detect both an add and remove operation on a node instead of a move operation. | |
| Precise | Compares files based on an algorithm for finding the editing distance between trees, also known as Zhang-Shasha algorithm. This algorithm gives very precise results but it may be very slow on large XML documents with many changes. | 
Examples
Imports System
Imports System.Xml
Imports Microsoft.XmlDiffPatch
Namespace TestCompare
   Class Class1
      Shared Sub Main()
        Dim diffWriter = New XmlTextWriter("diffgram.xml", New System.Text.UnicodeEncoding())
        Dim myDiff As New XmlDiff()
        myDiff.Algorithm = XmlDiffAlgorithm.Precise
        Dim bSame As Boolean = myDiff.Compare("source.xml", "changed.xml", False, diffWriter)
        Console.WriteLine("The answer is {0} ", bSame)
      End Sub
   End Class
End Namespace
using System;
using System.Xml;
using Microsoft.XmlDiffPatch;
namespace TestCompare
{
  class Class1
    {
        static void Main()
            {
            XmlWriter diffWriter = new XmlTextWriter("diffgram.xml", new System.Text.UnicodeEncoding()); 
            XmlDiff myDiff = new XmlDiff();
            myDiff.Algorithm = XmlDiffAlgorithm.Precise;
            bool bSame = myDiff.Compare("source.xml", "changed.xml", false, diffWriter);
    Console.WriteLine("The answer is {0} ", bSame);
            }
    }
}