DTSXMLDiffAlgorithm Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Spezifiziert, welchen Algorithmus beim Vergleich von XML-Dokumenten verwendet werden soll.
public enum class DTSXMLDiffAlgorithm
public enum DTSXMLDiffAlgorithm
type DTSXMLDiffAlgorithm =
Public Enum DTSXMLDiffAlgorithm
- Vererbung
-
DTSXMLDiffAlgorithm
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| Auto | 0 | Default. Wählt den Vergleichsalgorithmus für Sie aus, abhängig von der Größe und der angenommenen Anzahl der Änderungen in den verglichenen Dokumenten. |
| Fast | 1 | Vergleicht die beiden XML-Dokumente, indem der XML-Baum durchläuft und knotenweise vergleicht. Dieser Algorithmus ist sehr schnell, kann aber weniger präzise Ergebnisse liefern. Zum Beispiel kann es sowohl eine Hinzufügen- als auch eine Entfernen-Operation auf einem Knoten anstelle einer Bewegungsoperation erkennen. |
| Precise | 2 | Vergleicht Dateien basierend auf einem Algorithmus zur Bestimmung des Bearbeitungsabstands zwischen Bäumen, auch bekannt als Zhang-Shasha Algorithmus. Dieser Algorithmus liefert sehr präzise Ergebnisse, kann aber bei großen XML-Dokumenten mit vielen Änderungen sehr langsam sein. |
Beispiele
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);
}
}
}