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.
Gibt an, welcher Algorithmus beim Vergleichen von XML-Dokumenten verwendet werden soll.
public enum class DTSXMLDiffAlgorithm
public enum DTSXMLDiffAlgorithm
type DTSXMLDiffAlgorithm =
Public Enum DTSXMLDiffAlgorithm
- Vererbung
-
DTSXMLDiffAlgorithm
Felder
Auto | 0 | Standard. Wählt abhängig von der Größe und der angenommenen Anzahl von Änderungen in den verglichenen Dokumenten den Vergleichsalgorithmus aus. |
Fast | 1 | Vergleicht die beiden XML-Dokumente, indem die XML-Struktur durchlaufen und die einzelnen Knoten verglichen werden. Dieser Algorithmus ist sehr schnell, führt aber möglicherweise zu weniger präzisen Ergebnissen. Es kann z. B. anstelle eines Verschiebungsvorgangs sowohl einen Hinzufügungsvorgang als auch einen Entfernungsvorgang für einen Knoten erkennen. |
Precise | 2 | Vergleicht Dateien auf Grundlage eines Suchalgorithmus für den Bearbeitungsabstand zwischen Strukturen, der auch als Zhang-Shasha-Algorithmus bezeichnet wird. Dieser Algorithmus ergibt sehr präzise Ergebnisse, ist aber möglicherweise bei umfangreichen XML-Dokumenten mit vielen Änderungen sehr langsam. |
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);
}
}
}