Übersicht über die Ausrichtung auf mehrere Zielversionen in Visual Studio

Mit der Visual Studio-Funktion zur Festlegung von Zielversionen können Sie eine bestimmte Version oder ein bestimmtes Profil von .NET Framework angeben, die bzw. das für die Anwendung erforderlich ist. Der Hauptvorteil der Festlegung von Zielversionen besteht darin, dass Sie die aktuelle Version von Visual Studio verwenden können, um Projekte zu erstellen und zu entwickeln, die auf eine frühere Version von .NET Framework ausgerichtet sind. Sie können z. B. weiterhin Projekte entwickeln, die in Visual Studio 2005 und Visual Studio 2008 erstellt wurden, ohne neue .NET Framework-Abhängigkeiten hinzuzufügen. Mit der Funktion zur Festlegung von Zielversionen kann sichergestellt werden, dass Anwendungen nur die Funktionen verwenden, die in der angegebenen .NET Framework-Version verfügbar sind. Darüber hinaus können Sie mit der Funktion zur Festlegung von Zielversionen weiterhin ältere Anwendungen bereitstellen, ohne dem Bereitstellungspaket eine neue .NET Framework-Version hinzufügen zu müssen.

Tipp

Durch die Festlegung von Zielversionen in Visual Studio kann jedoch nicht sichergestellt werden, dass die Anwendung in mehreren Versionen von .NET Framework ausgeführt werden kann. Sie können die Festlegung von Zielversionen verwenden, um ein .NET Framework-Versionsziel für die Anwendung auszuwählen. Sie müssen die Anwendung dennoch testen, um sicherzustellen, dass Sie mit der ausgewählten Version ausgeführt wird. Die Festlegung von Zielversionen in Visual Studio gilt nur für .NET Framework 2.0 und höhere Versionen.

.NET Framework-Versionen und -Profile

Visual Studio 2010 umfasst nur .NET Framework 4. Um frühere Versionen von .NET Framework als Ziel festzulegen, muss .NET Framework 3.5 Service Pack 1 (SP1) installiert sein. .NET Framework 3.5 SP1 schließt .NET Framework 2.0, .NET Framework 3.0 und .NET Framework 3.5 SP1 ein. Wenn Sie .NET Framework 3.5 SP1 installieren möchten, können Sie es unter Microsoft .NET Framework 3.5 Service Pack 1 (möglicherweise in englischer Sprache) auf der Microsoft Download Center-Website herunterladen.

Ein .NET Framework-Profil ist eine Teilmenge von .NET Framework, das einen eingeschränkten Satz von Bibliotheken und Funktionen bereitstellt. Ein Beispiel für ein Frameworkprofil ist ein Clientprofil, das zum Erstellen von Clientanwendungen verwendet werden kann. Weitere Informationen zum Clientprofil finden Sie unter .NET Framework Client Profile.

Sie können die Zielversion oder das Zielprofil von .NET Framework angeben, indem Sie beim Erstellen eines Projekts im Dialogfeld Neues Projekt eine entsprechende Auswahl treffen. Die Liste der verfügbaren Projektvorlagen wird basierend auf der Auswahl gefiltert.

Tipp

Die Festlegung von Zielversionen über das Dialogfeld "Neues Projekt" ist in Express-Editionen von Visual Studio nicht verfügbar.

Ändern der .NET Framework-Zielversion

Für ein vorhandenes Projekt können Sie die Zielversion oder das Zielprofil von .NET Framework über die Projekteigenschaften ändern. Weitere Informationen finden Sie unter Seite "Anwendung", Projekt-Designer (C#) und Dialogfeld "Erweiterte Compilereinstellungen (Visual Basic).

Wenn Sie die .NET Framework-Zielversion ändern, ändert Visual Studio nicht immer automatisch die Versionen der Assemblys, auf die verwiesen wird. Möglicherweise sind auch einige manuelle Änderungen erforderlich. Weitere Informationen finden Sie unter Problembehandlung bei .NET Framework-Zielversionsfehlern.

Funktionen für die Festlegung von Zielversionen

Die Festlegung von Zielversionen von Visual Studio umfasst folgende Funktionen:

  • Wenn Sie in Visual Studio ein Projekt für eine frühere Version von .NET Framework öffnen, kann Visual Studio das Projekt automatisch aktualisieren oder weiter die frühere Version als Ziel beibehalten.

  • Wenn Sie ein neues Projekt erstellen, können Sie die gewünschte .NET Framework-Zielversion angeben.

  • Sie können die Version von .NET Framework ändern, auf die ein vorhandenes Projekt ausgerichtet ist.

  • Sie können verschiedene .NET Framework-Versionen als Zielversion für unterschiedliche Projekte in der gleichen Projektmappe festlegen.

  • Wenn Sie die Version von .NET Framework ändern, auf die ein Projekt ausgerichtet ist, werden in Visual Studio alle erforderlichen Änderungen an Verweisen und Konfigurationsdateien vorgenommen.

Außerdem kann Visual Studio dynamisch Änderungen in der Entwicklungsumgebung vornehmen, wenn Sie mit einem Projekt arbeiten, das eine frühere .NET Framework-Version als Ziel hat. Dazu zählen u. a. folgende Aktionen:

  • Filtern von Elementen in den Dialogfeldern Neues Projekt, Neues Element hinzufügen, Neuen Verweis hinzufügen und Dienstverweis hinzufügen, um die Optionen auszulassen, die nur in höheren Versionen verfügbar sind.

  • Filtern von benutzerdefinierten Steuerelementen in der Toolbox, um die Steuerelemente zu entfernen, die nur in höheren Versionen verfügbar sind, und um die neueste Version anzuzeigen, wenn mehrere Steuerelemente für die Zielversion verfügbar sind.

  • Filtern von IntelliSense, um Sprachfunktionen auszulassen, die nur in höheren Versionen verfügbar sind

  • Filtern von Eigenschaften im Fenster Eigenschaften, um die Eigenschaften auszulassen, die nur in höheren Versionen verfügbar sind.

  • Filtern von Menüoptionen, um die Optionen auszulassen, die nur in höheren Versionen verfügbar sind.

  • Kompilieren und Erstellen mit der entsprechenden Compilerversion und den richtigen Compileroptionen

Entwickeln von Anwendungen, die mit mehreren Versionen von .NET Framework kompatibel sind

Um eine Anwendung zu entwickeln, die mit mehreren Versionen von .NET Framework kompatibel ist, wird empfohlen, die Anwendung für die niedrigere Version von .NET Framework zu entwickeln und für den Build die höhere Version von .NET Framework zu verwenden. Sie können z. B. die Anwendung für .NET Framework 3.5 entwickeln und für den Build .NET Framework 4 verwenden.

Auflösen von System- und Benutzerassemblyverweisen

Im Dialogfeld Verweis hinzufügen werden Systemassemblys deaktiviert, die nicht zur .NET Framework-Zielversion gehören. (Systemassemblys sind DLL-Dateien, die Teil einer .NET Framework-Version sind.) Damit kann leichter vermieden werden, dass Verweise auf Assemblys hinzugefügt werden, die nicht in der Zielversion vorhanden sind. Wenn Sie die Projektdatei ändern, um Verweise einzufügen, die zu einer neueren .NET Framework-Version als der momentan festgelegten Zielversion des Projekts gehören, wird der Verweis nicht aufgelöst. Außerdem können Sie keine Steuerelemente hinzufügen oder verwenden, die von diesem Verweis abhängig sind. Ein solcher Verweis kann aufgelöst werden, indem Sie die .NET Framework-Zielversion des Projekts in eine Zielversion ändern, die diesen Verweis enthält. Diese Änderung kann auf der Eigenschaftenseite des Projekts vorgenommen werden. Weitere Informationen finden Sie unter Verwalten von Projekteigenschaften mit dem Projekt-Designer.

LINQ aktivieren

Wenn Sie ein Projekt auf .NET Framework 3.5 oder höher umstellen, werden automatisch ein Verweis auf "System.Core" und ein Import auf Projektebene für "System.Linq" (nur in Visual Basic) hinzugefügt. Wenn Sie LINQ-Features verwenden möchten, müssen Sie zusätzlich Option Infer aktivieren (nur in Visual Basic). Der Verweis und der Import werden automatisch entfernt, wenn Sie die Zielversion von .NET Framework in 3.0 oder 2.0 ändern. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen eines LINQ-Projekts.

Siehe auch

Konzepte

Festlegung von .NET Framework-Zielversionen für ASP.NET-Webprojekte

Weitere Ressourcen

MSBuild Concepts