Compartir a través de


DTSXMLDiffAlgorithm Enumeración

Definición

Especifica qué algoritmo hay que utilizar al comparar documentos XML.

public enum class DTSXMLDiffAlgorithm
public enum DTSXMLDiffAlgorithm
type DTSXMLDiffAlgorithm = 
Public Enum DTSXMLDiffAlgorithm
Herencia
DTSXMLDiffAlgorithm

Campos

Auto 0

Predeterminada. Elige automáticamente el algoritmo de comparación dependiendo del tamaño y el número supuesto de cambios en los documentos comparados.

Fast 1

Compara los dos documentos XML recorriendo el árbol XML y comparándolo nodo por nodo. Este algoritmo es muy rápido pero puede generar resultados menos precisos. Por ejemplo, puede detectar una operación agregar o una operación quitar sobre un nodo en lugar de una operación mover.

Precise 2

Compara archivos según un algoritmo para encontrar la distancia de edición entre árboles, también conocido como algoritmo de Zhang-Shasha. Este algoritmo proporciona resultados muy precisos, pero puede ser muy lento en documentos XML grandes con muchos cambios.

Ejemplos

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);  
            }  
    }  
}  

Se aplica a