| categories |
|
|||||
|---|---|---|---|---|---|---|
| date | 2026-03-08 | |||||
| description | Erfahren Sie, wie Sie Ordner in .NET mit GroupDocs.Comparison vergleichen, HTML-Berichte oder TXT-Protokolle erstellen und die Dateiverwaltung mit praktischen C#‑Beispielen automatisieren. | |||||
| keywords | folder comparison .NET tutorial, GroupDocs comparison save TXT HTML, compare directories C# code, .NET file comparison library, automated directory comparison | |||||
| lastmod | 2026-03-08 | |||||
| linktitle | How to Compare Folders in .NET | |||||
| tags |
|
|||||
| title | Wie man Ordner in .NET vergleicht – Leitfaden mit GroupDocs | |||||
| type | docs | |||||
| url | /de/net/advanced-comparison/groupdocs-comparison-net-folder-comparison-tutorial/ | |||||
| weight | 1 |
ed With:** GroupDocs.Comparison 25.4.0 for .NET
Author: GroupDocs"
Translate:
"---
Last Updated: 2026-03-08
Tested With: GroupDocs.Comparison 25.4.0 for .NET
Author: GroupDocs"
Date and version remain same.
Now ensure we keep all placeholders unchanged.
Also keep markdown formatting.
Now produce final content.# Wie man Ordner in .NET vergleicht – Leitfaden mit GroupDocs
Haben Sie schon einmal manuell Hunderte von Dateien überprüft, um Unterschiede zwischen zwei Verzeichnissen zu finden? In diesem Tutorial lernen Sie, wie Sie Ordner in .NET mit GroupDocs.Comparison vergleichen. Egal, ob Sie Code‑Deployments verwalten, Backups validieren oder Konfigurationsänderungen nachverfolgen, der Ordnervergleich in .NET kann Ihnen Stunden mühsamer Arbeit ersparen.
GroupDocs.Comparison for .NET verwandelt dieses Problem in einen einfachen, automatisierten Prozess. Sie können komplette Verzeichnisstrukturen vergleichen, Änderungen sofort erkennen und Ergebnisse in Formaten exportieren, die für Ihren Arbeitsablauf sinnvoll sind (TXT für Protokolle, HTML für visuelle Prüfungen).
- Was ist der Hauptzweck? Ordnervergleiche zu automatisieren und detaillierte TXT‑ oder HTML‑Berichte zu erstellen.
- Welche Ausgabeformate werden unterstützt? TXT für einfache Auswertung und HTML für die Erstellung eines visuellen Berichts.
- Brauche ich eine Lizenz? Eine kostenlose Testversion reicht für das Lernen; eine kommerzielle Lizenz entfernt Wasserzeichen für den Produktionseinsatz.
- Kann ich das unter Linux ausführen? Ja – GroupDocs.Comparison unterstützt .NET Core unter Linux, macOS und Windows.
- Welche .NET‑Versionen sind kompatibel? .NET Core 3.1+ und .NET 5/6/7/8.
Haben Sie schon einmal manuell Hunderte von Dateien überprüft, um Unterschiede zwischen zwei Verzeichnissen zu finden? Sie sind nicht allein. Egal, ob Sie Code‑Deployments verwalten, Backups validieren oder Konfigurationsänderungen nachverfolgen, folder comparison in .NET kann Ihnen Stunden mühsamer Arbeit ersparen.
GroupDocs.Comparison for .NET verwandelt dieses Problem in einen einfachen, automatisierten Prozess. Sie können komplette Verzeichnisstrukturen vergleichen, Änderungen sofort erkennen und Ergebnisse in Formaten exportieren, die für Ihren Arbeitsablauf sinnvoll sind (TXT für Protokolle, HTML für visuelle Prüfungen).
In diesem umfassenden Tutorial erfahren Sie, wie Sie eine robuste Ordnervergleichsfunktion implementieren, die alles von einfachen Verzeichnisprüfungen bis hin zu komplexen Dateiverwaltungsszenarien auf Unternehmensebene abdeckt.
Am Ende dieses Tutorials werden Sie sicher Ordnervergleichslösungen implementieren, die:
- Verzeichnisse jeder Größe effizient vergleichen
- Detaillierte Berichte in TXT‑ und HTML‑Formaten erzeugen (einschließlich wie man generate HTML report erstellt)
- Randfälle und Leistungsaspekte berücksichtigen
- Nahtlos in Ihre bestehenden .NET‑Anwendungen integrieren
- Wiederkehrende Dateiverwaltungsaufgaben automatisieren
Lassen Sie uns in die Voraussetzungen eintauchen und Sie für den Erfolg rüsten!
Bevor wir zu den interessanten Dingen kommen, stellen wir sicher, dass Sie alles haben, was Sie benötigen. Keine Sorge – die Einrichtung ist unkompliziert, und ich führe Sie Schritt für Schritt.
Erforderliche Bibliotheken und Versionen
- GroupDocs.Comparison for .NET: Version 25.4.0 (die neueste stabile Version ab 2025)
- .NET Framework/SDK: Kompatibel mit .NET Core 3.1+ und .NET 5/6/7/8
- Entwicklungsumgebung: Visual Studio 2019+ (Community‑Edition funktioniert perfekt)
Vorkenntnisse
- Grundlegendes Verständnis der C#‑Programmierung (wenn Sie eine einfache Konsolen‑App schreiben können, sind Sie startklar)
- Vertrautheit mit Dateisystemoperationen in .NET (Arbeiten mit Pfaden, Verzeichnissen, Dateien)
- Verständnis des NuGet‑Paketmanagements
So prüfen Sie einfach, ob Ihre Umgebung bereit ist:
- Öffnen Sie Ihre bevorzugte IDE (Visual Studio, VS Code oder JetBrains Rider)
- Erstellen Sie eine neue Konsolenanwendung, die .NET Core 3.1 oder höher targetiert
- Stellen Sie sicher, dass Sie Zugriff auf den NuGet Package Manager haben
Wenn Sie diese drei Dinge erledigen können, sind Sie startklar! Jetzt installieren und konfigurieren wir GroupDocs.Comparison.
GroupDocs.Comparison in Ihrem Projekt zum Laufen zu bringen ist ein Kinderspiel. Sie haben zwei Hauptinstallationsmethoden, und ich zeige Ihnen beide.
Option 1: NuGet Package Manager Console (Empfohlen für Visual‑Studio‑Benutzer)
Install-Package GroupDocs.Comparison -Version 25.4.0Option 2: .NET CLI (Ideal für Befehlszeilen‑Enthusiasten)
dotnet add package GroupDocs.Comparison --version 25.4.0Pro‑Tipp: Geben Sie immer die Version an, um Konsistenz im Team und in den Bereitstellungsumgebungen zu gewährleisten.
GroupDocs.Comparison bietet flexible Lizenzmodelle, die verschiedene Bedürfnisse abdecken:
- Free Trial: Perfekt für die Evaluierung – bietet Zugriff auf alle Funktionen mit einigen Einschränkungen
- Temporary License: Ideal für Proof‑of‑Concept‑Projekte – entfernt Testbeschränkungen vorübergehend
- Commercial License: Vollständige Funktionen für Produktionsanwendungen
Für Lernzwecke ist die kostenlose Testversion mehr als ausreichend. Sie können später jederzeit upgraden, wenn Sie bereit für die Bereitstellung sind.
Hier ist Ihr erstes Stück GroupDocs.Comparison‑Code. Diese einfache Einrichtung prüft, ob alles korrekt funktioniert:
using System;
using GroupDocs.Comparison;
class Program
{
static void Main()
{
// Initialize the license if available
License license = new License();
// license.SetLicense("Path to your license file"); // Uncomment when you have a license
Console.WriteLine("GroupDocs.Comparison for .NET is ready to use.");
Console.WriteLine("Let's start comparing some folders!");
}
}Wenn dieser Code ohne Fehler läuft, herzlichen Glückwunsch! Sie sind bereit, leistungsstarke Ordnervergleichsfunktionen zu entwickeln.
Beginnen wir mit dem einfachsten Ansatz: zwei Verzeichnisse vergleichen und die Ergebnisse als Textdatei speichern. Diese Methode ist ideal für automatisierte Skripte, Protokollsysteme oder wenn Sie ein einfaches, auswertbares Ausgabeformat benötigen.
Textdateien sind äußerst vielseitig. Sie sind leicht, lassen sich programmatisch einfach auswerten, sind versionskontrollfreundlich und können auf jedem System angezeigt werden. Perfekt für:
- Automatisierte Build‑Prozesse
- Protokolldateianalyse
- Kommandozeilen‑Tools
- Integration mit anderen Systemen
using System;
using System.IO;
using GroupDocs.Comparison;
using GroupDocs.Comparison.Options;
string sourceFolder = "YOUR_DOCUMENT_DIRECTORY/SOURCE_FOLDER";
string targetFolder = "YOUR_DOCUMENT_DIRECTORY/TARGET_FOLDER";
string outputDirectory = "YOUR_OUTPUT_DIRECTORY";
// Set comparison options for TXT output
Options.CompareOptions compareOptionsTxt = new Options.CompareOptions
{
DirectoryCompare = true,
FolderComparisonExtension = GroupDocs.Comparison.Options.FolderComparisonExtension.Txt
};Was passiert hier? Sie teilen GroupDocs.Comparison mit, dass Sie komplette Verzeichnisse (nicht einzelne Dateien) vergleichen und die Ergebnisse im Textformat ausgeben möchten. Die Einstellung DirectoryCompare = true ist entscheidend – sie aktiviert die rekursive Verzeichnisvergleichsfunktion.
Comparer comparerTxt = new Comparer(sourceFolder, compareOptionsTxt);
// Add target folder for comparison
comparerTxt.Add(targetFolder, compareOptionsTxt);Hier beginnt die Magie. Sie erstellen eine Comparer‑Instanz mit Ihrem Quellordner als Basis und fügen dann den Zielordner zum Vergleich hinzu. Denken Sie daran, dass Sie „vergleiche alles in Ordner B mit Ordner A“ sagen.
string txtOutputFileName = Path.Combine(outputDirectory, "ComparisonResult.txt");
comparerTxt.Compare(txtOutputFileName, compareOptionsTxt);
Console.WriteLine("TXT file with comparison results saved successfully.");
Console.WriteLine($"Check your results at: {txtOutputFileName}");Das war's! Ihre Vergleichsergebnisse werden nun als Textdatei gespeichert. Die Ausgabe enthält Details zu hinzugefügten, gelöschten und geänderten Dateien, sodass Sie leicht nachvollziehen können, was sich zwischen den beiden Verzeichnissen geändert hat.
Die erzeugte Textdatei enthält typischerweise:
- Added files – im Ziel vorhanden, aber nicht in der Quelle
- Deleted files – in der Quelle vorhanden, aber nicht im Ziel
- Modified files – existieren in beiden Verzeichnissen, haben aber unterschiedlichen Inhalt
- File metadata – Größe, Änderungsdaten und weitere relevante Informationen
Während TXT‑Dateien für die Automatisierung ideal sind, glänzt die HTML‑Ausgabe, wenn Sie einen visuellen, für Menschen lesbaren Bericht benötigen. HTML‑Vergleichsergebnisse sind perfekt für Code‑Reviews, Kundenpräsentationen oder wenn Sie Ergebnisse mit nicht‑technischen Teammitgliedern teilen möchten.
- Visuelle Diff‑Hervorhebung – sehen Sie exakt, was sich mit farbcodierten Unterschieden geändert hat
- Interaktive Navigation – klicken Sie mühelos durch Dateien und Ordner
- Professionelle Präsentation – ideal für Berichte und Dokumentation
- Plattformübergreifende Ansicht – öffnet sich in jedem Webbrowser
// Set comparison options for HTML output
Options.CompareOptions compareOptionsHtml = new Options.CompareOptions
{
DirectoryCompare = true,
FolderComparisonExtension = GroupDocs.Comparison.Options.FolderComparisonExtension.Html
};Der wesentliche Unterschied hier ist die Einstellung FolderComparisonExtension.Html. Diese weist GroupDocs.Comparison an, einen umfangreichen HTML‑Bericht anstelle von einfachem Text zu erzeugen.
Comparer comparerHtml = new Comparer(sourceFolder, compareOptionsHtml);
// Add target folder to the comparison
comparerHtml.Add(targetFolder, compareOptionsHtml);Dasselbe Muster wie zuvor, jedoch jetzt für HTML‑Ausgabe konfiguriert. Die Schönheit der GroupDocs.Comparison‑API liegt in ihrer Konsistenz – Sie verwenden dieselben Methoden, unabhängig vom Ausgabeformat.
string htmlOutputFileName = Path.Combine(outputDirectory, "ComparisonResult.html");
comparerHtml.Compare(htmlOutputFileName, compareOptionsHtml);
Console.WriteLine("HTML file with comparison results saved successfully.");
Console.WriteLine($"Open in browser: {htmlOutputFileName}");Die erhaltene HTML‑Datei ist ein vollständiger, eigenständiger Bericht, den Sie in jedem Webbrowser öffnen können. Sie enthält interaktive Elemente, Syntax‑Highlighting (für Code‑Dateien) und ein sauberes, professionelles Layout.
Ihre HTML‑Ausgabe enthält typischerweise:
- Summary dashboard – Übersicht über Gesamtänderungen, betroffene Dateien und Vergleichsstatistiken
- Side‑by‑side comparisons – visuelle Diff‑Ansicht, die exakt zeigt, was sich geändert hat
- Folder tree navigation – einfaches Durchsuchen der Verzeichnisstruktur
- File‑level details – einzelne Dateivergleiche mit hervorgehobenen Unterschieden
Zu verstehen, wann und wie man Ordnervergleiche einsetzt, kann Ihren Entwicklungsworkflow erheblich verbessern. Hier sind einige Szenarien, in denen diese Funktionalität unverzichtbar ist:
Szenario: Sie prüfen Änderungen zwischen zwei Branches oder vergleichen verschiedene Versionen Ihres Code‑Bases.
Warum Ordnervergleich hilft: Anstatt Dateien einzeln zu prüfen, sehen Sie sofort alle Änderungen, Ergänzungen und Löschungen in Ihrer gesamten Projektstruktur. Die HTML‑Ausgabe ist hier besonders nützlich – Sie können visuelle Diff‑Berichte mit Ihrem Team teilen.
Szenario: Sie müssen prüfen, dass Ihr Backup‑Prozess alle Dateien korrekt kopiert hat und keine Beschädigungen aufgetreten sind.
Implementierungstipp: Verwenden Sie TXT‑Ausgabe für automatisierte Verifikationsskripte, die in Ihren Backup‑Workflow integriert werden können. Richten Sie Alarme ein, wenn Diskrepanzen entdeckt werden.
Szenario: Sie verwalten Anwendungskonfigurationen über Entwicklungs‑, Staging‑ und Produktionsumgebungen.
Best Practice: Regelmäßige Ordnervergleiche helfen, Konfigurationsabweichungen zu erkennen, bevor sie Produktionsprobleme verursachen. HTML‑Berichte eignen sich perfekt für die Dokumentation des Änderungsmanagements.
Szenario: Sie verwalten Dokumenten‑Repos, in denen mehrere Teammitglieder Änderungen an Dateien vornehmen.
Pro‑Tipp: Kombinieren Sie Ordnervergleich mit geplanten Aufgaben, um automatisch Änderungsberichte zu erzeugen. Das ist besonders nützlich für Compliance‑ und Auditzwecke.
Szenario: Sie möchten Änderungen automatisch erkennen und im Rahmen Ihres Deployments melden.
Erweiterte Nutzung: Integrieren Sie Ordnervergleich in Ihre Build‑Pipeline, um für jede Bereitstellung Änderungsberichte zu erzeugen, die bei Rollback‑Entscheidungen und der Nachverfolgung von Änderungen helfen.
Bei großen Verzeichnisstrukturen ist die Leistung entscheidend. Hier sind bewährte Strategien, um Ihre Ordnervergleiche reibungslos laufen zu lassen:
-
Intelligente Verzeichnisauswahl
- Vergleichen Sie nur die Verzeichnisse, die Sie tatsächlich analysieren müssen
- Verwenden Sie Filter, um temporäre Dateien, Protokolle oder andere irrelevante Inhalte auszuschließen
- Erwägen Sie, sehr große Vergleiche in kleinere, fokussierte Abschnitte zu unterteilen
-
Speichermanagement
// Dispose of comparer objects properly
using (Comparer comparer = new Comparer(sourceFolder, compareOptions))
{
comparer.Add(targetFolder, compareOptions);
comparer.Compare(outputFileName, compareOptions);
} // Automatically disposed here- Asynchrone Verarbeitung
Für große Vergleiche sollten Sie asynchrone Muster implementieren, um UI‑Blockierungen in Desktop‑Anwendungen oder Zeitüberschreitungen in Web‑Anwendungen zu vermeiden.
- Speichernutzung während großer Vergleiche überwachen
- Verarbeitungszeit für verschiedene Verzeichnisgrößen verfolgen
- Realistische Erwartungen für Benutzer basierend auf Verzeichnis‑Komplexität setzen
- Fortschrittsberichte für langlaufende Vorgänge in Betracht ziehen
Selbst bei gut geschriebenem Code können Sie auf Herausforderungen stoßen. Hier sind die häufigsten Probleme und ihre Lösungen:
Problem: „Zugriff verweigert“ oder „Datei in Verwendung“ Fehlermeldungen
Lösung:
- Stellen Sie sicher, dass Ihre Anwendung mit den entsprechenden Berechtigungen läuft
- Prüfen Sie, ob Dateien nicht von anderen Prozessen gesperrt sind
- Implementieren Sie Wiederholungslogik für temporäre Dateisperren
Problem: Ungültige Pfad‑Fehler oder Verzeichnis nicht gefunden
Lösung:**
// Always validate paths before comparison
if (!Directory.Exists(sourceFolder))
{
throw new DirectoryNotFoundException($"Source directory not found: {sourceFolder}");
}
if (!Directory.Exists(targetFolder))
{
throw new DirectoryNotFoundException($"Target directory not found: {targetFolder}");
}Problem: Out‑of‑Memory‑Ausnahmen oder langsame Leistung
Lösungen:
- Große Vergleiche in kleinere Stapel aufteilen
- Unnötige Dateitypen vom Vergleich ausschließen
- Speicherverbrauchsmuster überwachen und optimieren
Problem: Ausgabedateien werden nicht erzeugt oder sind beschädigt
Fehlerbehebungsschritte:
- Schreibberechtigungen im Ausgabeverzeichnis überprüfen
- Ausreichend Speicherplatz sicherstellen
- Auf ungültige Zeichen in Dateipfaden prüfen
- Vor dem Vergleich prüfen, ob das Ausgabeverzeichnis existiert
GroupDocs.Comparison bietet zahlreiche Konfigurationsoptionen, mit denen Sie das Vergleichsverhalten fein abstimmen können:
Sie können einstellen, wie empfindlich der Vergleich auf verschiedene Arten von Änderungen reagiert:
- Whitespace handling – Leerzeichen‑Änderungen ignorieren oder einbeziehen
- Case sensitivity – steuern, ob Groß‑/Kleinschreibung als Änderung gilt
- Line ending normalization – unterschiedliche Zeilenende‑Formate handhaben
Konzentrieren Sie Ihre Vergleiche auf bestimmte Dateitypen:
compareOptions.FileAuthorMetadata = false; // Ignore metadata changes
compareOptions.GenerateFramePreview = true; // Generate preview framesPassen Sie das Ausgabeformat Ihren spezifischen Bedürfnissen an:
- Custom templates – HTML‑Ausgabe‑Styling anpassen
- Metadata inclusion – steuern, welche Dateiinformationen einbezogen werden
- Diff granularity – zwischen Datei‑ oder Zeilen‑Vergleichen wählen
Herzlichen Glückwunsch! Sie haben die Grundlagen des Ordnervergleichs mit GroupDocs.Comparison für .NET gemeistert. Sie verfügen nun über die Fähigkeiten, um:
- ✅ GroupDocs.Comparison in Ihren Projekten einrichten und konfigurieren
- ✅ Verzeichnisse vergleichen und sowohl TXT‑ als auch HTML‑Berichte erzeugen (einschließlich wie man generate HTML report erstellt)
- ✅ Häufige Herausforderungen bewältigen und die Leistung optimieren
- ✅ Ordnervergleich in reale Anwendungen integrieren
Bereit, Ihre Ordnervergleichsfähigkeiten auf die nächste Stufe zu heben? Erwägen Sie, Folgendes zu erkunden:
- Erweiterte Filteroptionen für gezieltere Vergleiche
- API‑Integration für webbasierte Vergleichsdienste
- Batch‑Verarbeitung für die Handhabung mehrerer Verzeichnis‑Paare
- Benutzerdefinierte Berichtformate, die auf die Bedürfnisse Ihrer Organisation zugeschnitten sind
Der beste Weg, diese Konzepte zu meistern, ist die praktische Anwendung. Wählen Sie eines Ihrer aktuellen Projekte und identifizieren Sie, wo Ordnervergleich Ihren Workflow optimieren könnte. Beginnen Sie klein, experimentieren Sie mit verschiedenen Ausgabeformaten und integrieren Sie nach und nach erweiterte Funktionen.
Denken Sie daran: Jeder Experte war einmal ein Anfänger. Nehmen Sie sich Zeit, experimentieren Sie frei und zögern Sie nicht, dieses Handbuch zu Rate zu ziehen, wann immer Sie eine Auffrischung benötigen!
Q: Kann ich GroupDocs.Comparison für .NET auf Linux‑Systemen verwenden?
A: Absolut! GroupDocs.Comparison unterstützt die plattformübergreifende Bereitstellung über .NET Core vollständig. Es funktioniert nahtlos auf Linux-, macOS‑ und Windows‑Umgebungen.
Q: Wie soll ich sehr große Verzeichnisse mit tausenden Dateien handhaben?
A: Für große Verzeichnisse setzen Sie folgende Strategien um: Asynchrone Verarbeitung nutzen, Vergleiche in kleinere Stapel aufteilen, unnötige Dateitypen ausschließen und den Speicherverbrauch überwachen. Erwägen Sie, den Benutzern bei langlaufenden Vorgängen Fortschrittsrückmeldungen zu geben.
Q: Gibt es ein praktisches Limit für die Anzahl der zu vergleichenden Dateien?
A: Es gibt kein festes Limit in der Bibliothek, aber die Leistung hängt von Ihren Systemressourcen (RAM, CPU, Festplattengeschwindigkeit) und Dateigrößen ab. Die meisten Systeme können problemlos tausende Dateien verarbeiten, sehr große Datensätze können jedoch Optimierungsstrategien erfordern.
Q: Kann GroupDocs.Comparison verschlüsselte oder passwortgeschützte Dateien verarbeiten?
A: Die Bibliothek kann verschlüsselte Dateien nicht direkt vergleichen. Sie müssen die Dateien zuerst entschlüsseln, sofern Sie die entsprechenden Berechtigungen und Zugangsdaten besitzen. Stellen Sie stets sicher, dass Sie die Sicherheitsrichtlinien Ihrer Organisation beim Umgang mit verschlüsselten Inhalten einhalten.
Q: Wie integriere ich den Ordnervergleich in automatisierte CI/CD‑Pipelines?
A: Erstellen Sie Konsolenanwendungen, die GroupDocs.Comparison nutzen, konfigurieren Sie sie so, dass sie geeignete Exit‑Codes basierend auf den Vergleichsergebnissen zurückgeben, und binden Sie sie in Ihre Build‑Skripte ein. Die TXT‑Ausgabe ist besonders nützlich, um Ergebnisse in automatisierten Umgebungen zu parsen.
Q: Was ist der Unterschied zwischen Test‑ und Lizenzversionen?
A: Die Testversion enthält alle Funktionen, fügt jedoch Wasserzeichen zu den Ausgaben hinzu und hat einige Nutzungseinschränkungen. Lizenzierte Versionen entfernen diese Beschränkungen und sind für den Produktionseinsatz geeignet.
Q: Kann ich das Styling und Layout der HTML‑Ausgabe anpassen?
A: Ja, GroupDocs.Comparison bietet Optionen zur Anpassung der HTML‑Ausgabe. Sie können Vorlagen ändern, das Styling anpassen und steuern, welche Informationen in den Berichten enthalten sind.
Q: Wie gehe ich mit Dateien um, die in einem Verzeichnis, aber nicht im anderen existieren?
A: GroupDocs.Comparison erkennt und meldet diese Unterschiede automatisch als „added“ oder „deleted“ Dateien. Sie können konfigurieren, wie diese Unterschiede in Ihrem Ausgabeformat dargestellt werden.
- Complete API Reference: GroupDocs.Comparison .NET API Documentation
- Developer Guide: GroupDocs Developer Resources
- Latest Release: Download GroupDocs.Comparison
- Purchase Options: Buy Commercial License
- Free Trial: Start Your Free Trial
- Temporary License: Request Evaluation License
Last Updated: 2026-03-08
Tested With: GroupDocs.Comparison 25.4.0 for .NET
Author: GroupDocs