Was ist die Abwärtskompatibilität von .NET Framework?

12

Wir entwickeln eine Windows-Anwendung in .NET 4 mit einer Datenbank von MySQL. Wenn wir diese Anwendung bereitstellen möchten, installieren wir das .NET 4-Framework in unserem Client. Für die Installation des .NET Connector für MySQL ist ein .NET Framework 3.5 erforderlich. Aber .NET 4 ist bereits installiert. War .NET Framework nicht abwärtskompatibel?

Am Ende installieren wir zwei .NET Frameworks (3.5 und 4), die nicht klein sind. Was genau bedeutet Abwärtskompatibilität?

John Isaiah Carmona
quelle
3
Die Antwort auf die nicht gestellte Frage: Ja, es ist in Ordnung, wütend zu sein.
Erik Reppen
Müssen Sie das gesamte .NET 3.5 Framework für einen Connector installieren? Haben Sie versucht, nur die erforderlichen Baugruppen zu kopieren / zu registrieren?
Mert Akcakaya
6
What is .NET framework backward compatibility?Ein Mythos.
Yannis
@YannisRizos Sie halten die veralteten Codes / Funktionen und halten ihr Framework für einen Mythos immer größer? .NET ist komisch.
John Isaiah Carmona
@ErikReppen: wütend auf wen?
Doc Brown

Antworten:

18

So zitieren Sie MSDN :

.NET Framework 4 ist abwärtskompatibel mit Anwendungen, die mit den .NET Framework-Versionen 1.1, 2.0, 3.0 und 3.5 erstellt wurden. Mit anderen Worten, Anwendungen und Komponenten, die mit früheren Versionen von .NET Framework erstellt wurden, funktionieren unter .NET Framework 4.

In der Praxis kann diese Kompatibilität jedoch durch scheinbar unwichtige Änderungen in .NET Framework und Änderungen in den Programmiertechniken beeinträchtigt werden. Beispielsweise können Leistungsverbesserungen in .NET Framework 4 eine Racebedingung verfügbar machen, die in früheren Versionen nicht aufgetreten ist. Ebenso sind die Verwendung eines fest codierten Pfads zu .NET Framework-Assemblys, die Durchführung eines Gleichheitsvergleichs mit einer bestimmten Version von .NET Framework und das Abrufen des Werts eines privaten Felds mithilfe von Reflection keine abwärtskompatiblen Methoden. Darüber hinaus enthält jede Version von .NET Framework Fehlerkorrekturen und sicherheitsrelevante Änderungen, die sich auf die Kompatibilität einiger Anwendungen und Komponenten auswirken können.

Sie sollten Ihre .NET Framework-Anwendungen und -Komponenten testen, um sicherzustellen, dass sie mit anderen Versionen von .NET Framework kompatibel sind. Verwenden Sie die exemplarische Vorgehensweise zur Anwendungskompatibilität von .NET Framework 4, um sicherzustellen, dass eine Anwendung oder Komponente erfolgreich auf .NET Framework 4 ausgeführt wird.

Möglicherweise sehen Sie auch diesen sehr nützlichen Thread, in dem eine ausführliche Erklärung gegeben wurde:

/programming/2816914/backwards-compatibility-of-net-framework-4

Mamta D.
quelle