Macht .NET 4.6.1 .NET 4.0 überflüssig?

6027
Urangurban

Ich habe eine App für .NET 4.0.30319. Windows Update gibt mir jedoch nur die Optionen, 4.5.2 oder 4.6.1 auf meinen Clients zu installieren. Läuft die App mit installiertem .NET 4.6.1 oder 4.5.2? Oder muss ich .NET 4.0.30319 manuell installieren?

5

1 Antwort auf die Frage

8
Frank Thomas

4.5.x ist ein "In-Place-Upgrade" auf .NET 4.0, und 4.6.x ist ein "In-Place" -Upgrade auf 4.5.x. Ja, 4.6.x sollte alles abdecken, was Sie brauchen.

Weitere Informationen finden Sie hier: https://msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx

Targeting und Ausführung von .NET Framework-Apps für Version 4.5 und höher

.NET Framework 4.5 ist ein In-Place-Update, das .NET Framework 4 auf Ihrem Computer ersetzt. In ähnlicher Weise sind .NET Framework 4.5.1, 4.5.2, 4.6, 4.6.1 und 4.6.2 vorhanden Aktualisierungen von .NET Framework 4.5, d. h., sie verwenden dieselbe Laufzeitversion. Die Assemblyversionen werden jedoch aktualisiert und enthalten neue Typen und Member. Nachdem Sie eines dieser Updates installiert haben, sollten die Apps von .NET Framework 4, .NET Framework 4.5 oder .NET Framework 4.6 weiterhin ausgeführt werden, ohne dass eine Neukompilierung erforderlich ist. Das Gegenteil trifft jedoch nicht zu. Es wird nicht empfohlen, Apps auszuführen, die auf eine spätere Version von .NET Framework mit einer früheren Version von .NET Framework abzielen. Wir empfehlen beispielsweise nicht, dass Sie eine App ausführen, auf der .NET Framework 4.6 unter .NET Framework 4.5 als Ziel ausgeführt wird. Es gelten folgende Richtlinien:

In Visual Studio 2013 können Sie .NET Framework 4.5 als Zielframework für ein Projekt auswählen (dadurch wird die GetReferenceAssemblyPaths.TargetFrameworkMoniker-Eigenschaft festgelegt), um das Projekt als .NET Framework 4.5-Assembly oder als ausführbare Datei zu kompilieren. Diese Assembly oder ausführbare Datei kann dann auf jedem Computer verwendet werden, auf dem .NET Framework 4.5, 4.5.1, 4.5.2, 4.6 oder 4.6.1 installiert ist.

In Visual Studio können Sie .NET Framework 4.5.1 als Zielframework für ein Projekt auswählen (dadurch wird die Eigenschaft GetReferenceAssemblyPaths.TargetFrameworkMoniker festgelegt), um das Projekt als Assembly oder ausführbare .NET Framework 4.5.1-Datei zu kompilieren. Diese Assembly oder ausführbare Datei sollte nur auf Computern ausgeführt werden, auf denen .NET Framework 4.5.1 oder eine neuere Version von .NET Framework installiert ist. Eine ausführbare Datei, die auf .NET Framework 4.5.1 abzielt, kann nicht auf einem Computer ausgeführt werden, auf dem nur eine frühere Version von .NET Framework installiert ist, z. B. .NET Framework 4.5, und der Benutzer wird zur Installation von .NET Framework 4.5 aufgefordert .NET Framework 4.5.1. Außerdem sollten die .NET Framework 4.5.1-Assemblys nicht von einer App aus aufgerufen werden, die auf eine frühere Version von .NET Framework, wie z. B. .NET Framework 4.5, abzielt.

Das .NET Framework 4.5.1 und .NET Framework 4.5 werden hier nur als Beispiele verwendet. Dieses Prinzip gilt für alle Apps, die auf eine neuere Version von .NET Framework abzielen als die, die auf dem System installiert ist, auf dem es ausgeführt wird.

Einige Änderungen in .NET Framework erfordern möglicherweise Änderungen am App-Code. Siehe Anwendungskompatibilität in .NET Framework, bevor Sie Ihre vorhandenen Apps mit .NET Framework 4.5 oder höheren Versionen ausführen. Weitere Informationen zum Installieren der aktuellen Version finden Sie unter Installieren von .NET Framework. Informationen zur Unterstützung von .NET Framework finden Sie auf der Microsoft Support-Website unter Microsoft .NET Framework Support Lifecycle Policy.

Es hat wokred - vielen Dank Urangurban vor 8 Jahren 0