DTSXMLDiffAlgorithm Énumération

Définition

Précise quel algorithme utiliser lors de la comparaison de documents XML.

public enum class DTSXMLDiffAlgorithm
public enum DTSXMLDiffAlgorithm
type DTSXMLDiffAlgorithm = 
Public Enum DTSXMLDiffAlgorithm
Héritage
DTSXMLDiffAlgorithm

Champs

Nom Valeur Description
Auto 0

Default. Choisit l’algorithme de comparaison pour vous en fonction de la taille et du nombre supposé de modifications dans les documents comparés.

Fast 1

Compare les deux documents XML en parcourant l’arbre XML et en le comparant nœud par nœud. Cet algorithme est très rapide mais peut produire des résultats moins précis. Par exemple, il peut détecter à la fois une opération d’ajout et de retrait sur un nœud au lieu d’une opération de déplacement.

Precise 2

Compare les fichiers à partir d’un algorithme permettant de trouver la distance d’édition entre les arbres, également appelé algorithme Zhang-Shasha. Cet algorithme donne des résultats très précis mais il peut être très lent sur de gros documents XML avec de nombreuses modifications.

Exemples

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

S’applique à