Problembehandlung bei .NET Framework-Zielversionsfehlern
In Visual Studio können Sie eine einfache, als .NET Framework 4 Client Profile bezeichnete .NET Framework-Laufzeit verteilen, die nur eine Teilmenge der in .NET Framework 4 enthaltenen Binärdateien enthält. Mit .NET Framework 4 Client Profile können Sie eine kleinere .NET Framework-Bibliothek an die Benutzer der Anwendung verteilen, sodass sie die Anwendung auch dann ausführen können, wenn nicht die vollständige .NET Framework 4-Version auf ihren Systemen installiert ist.
Wenn die Anwendung auf ein bestimmtes Profil abzielt, können Fehler auftreten, wenn auf eine Assembly verwiesen werden soll, die nicht zu diesem Profil gehört. Folgende Fehler treten häufig auf:
Der Typ oder Namespacename "Name" ist im Namespace "Namespace" nicht vorhanden. (Möglicherweise fehlt ein Assemblyverweis.)
Der Typ "Typname" ist nicht definiert.
Die Assembly "Assembly" konnte nicht aufgelöst werden. Die Assembly ist nicht als Teil des Profils "Profil" aufgeführt.
Diese Fehler können sich aus anderen Aktionen ergeben. Dieses Thema enthält Beschreibungen zur möglichen Fehlerursache und zur Problembehandlung.
Weitere Informationen zu .NET Framework 4 Client Profile finden Sie unter .NET Framework Client Profile und Gewusst wie: Ausrichten auf eine bestimmte .NET Framework-Version oder ein bestimmtes .NET Framework-Profil.
Sie haben auf eine Assembly verwiesen, die nicht im Client Profile enthalten ist.
Falls Ihre Anwendung versucht, auf Funktionen zu verweisen, die in einer Assembly oder abhängigen Assembly enthalten sind, die nicht Teil von .NET Framework 4 Client Profile ist, können Laufzeitfehler auftreten. Die genaue Meldung hängt davon ab, wo sich die referenzierte Funktion befindet. Um solche Fehler zu vermeiden, können Sie entweder den falschen Assemblyverweis aus dem Projekt entfernen oder die vollständige .NET Framework, Version 4 anstelle der .NET Framework 4 Client Profile-Teilmengenbibliothek als Ziel für das Projekt festlegen.
Sie haben auf ein Projekt oder eine Assembly verwiesen, die auf eine andere Version von .NET Framework abzielt.
Sie können Anwendungen erstellen, die auf Projekte oder Assemblys verweisen, die auf andere Versionen von .NET Framework abzielen. Wenn Sie beispielsweise eine Anwendung erstellen, die auf .NET Framework 4 Client Profile abzielt, kann dieses Projekt auf eine Assembly verweisen, die auf .NET Framework, Version 2.0, abzielt. Wenn Sie jedoch ein Projekt erstellen, das auf eine frühere Version von .NET Framework abzielt, können Sie keinen Verweis in diesem Projekt auf ein Projekt oder eine Assembly festlegen, die auf .NET Framework 4 Client Profile oder .NET Framework 4 abzielt. Stellen Sie zur Fehlerbehebung sicher, dass das Profil, auf das die Anwendung abzielt, mit dem Profil kompatibel ist, auf das die Projekte oder Assemblys abzielen, auf die von der Anwendung verwiesen wird.
Sie haben für ein Projekt nun eine andere Version von .NET Framework als Zielversion festgelegt.
Wenn Sie die Zielversion von .NET Framework in der Anwendung ändern, werden von Visual Studio einige der Verweise geändert. Sie müssen jedoch auch einige manuelle Updates vornehmen. Wenn Sie z. B. eine Anwendung mit Ressourcen oder Einstellungen erstellen, die auf .NET Framework 4 Client Profile basieren, und Sie dann als Zielversion für die Anwendung .NET Framework 3.5 SP1 festlegen, wird möglicherweise einer der zuvor erwähnten Fehler angezeigt.
So umgehen Sie Probleme in den Anwendungseinstellungen: Klicken Sie im Projektmappen-Explorer auf Alle Dateien anzeigen, und bearbeiten Sie die Datei "app.config" im Visual Studio-XML-Editor. Passen Sie die Version in den Einstellungen der Version von .NET Framework an. Sie können z. B. die Versionseinstellung von 4.0.0.0 auf 2.0.0.0 ändern. Gehen Sie bei Anwendungen mit hinzugefügten Ressourcen wie folgt vor: Klicken Sie im Projektmappen-Explorer auf Alle Dateien anzeigen, erweitern Sie Mein Projekt (Visual Basic) oder Eigenschaften (C#), und bearbeiten Sie dann die Datei "Resources.resx" im Visual Studio-XML-Editor. Ändern Sie die Versionseinstellung von 4.0.0.0 auf 2.0.0.0.
Wenn die Anwendung über Ressourcen z. B. Symbole oder Bitmaps verfügt oder Einstellungen z. B. Datenverbindungszeichenfolgen aufweist, können Sie das Problem auch beheben, indem Sie alle Elemente auf der Seite Einstellungen im Projekt-Designer entfernen und dann die erforderlichen Einstellungen erneut hinzufügen. Weitere Informationen finden Sie unter Seite "Einstellungen", Projekt-Designer.
Sie haben einem Projekt eine andere .NET Framework-Version als Ziel neu zugewiesen, und Verweise werden nicht aufgelöst.
In einigen Fällen kann es beim Neuzuweisen einer anderen .NET Framework-Zielversion für ein Projekt vorkommen, dass Verweise nicht korrekt aufgelöst werden. Dies ist häufig auf explizite vollqualifizierte Verweise auf Assemblys zurückzuführen. Sie können dieses Problem beheben, indem Sie die nicht aufgelösten Verweise entfernen und anschließend wieder dem Projekt hinzufügen. Alternativ können Sie die Projektdatei bearbeiten, um Verweise in der folgenden Form zu entfernen:
<Reference Include="System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" />
und durch die einfache Form zu ersetzen:
<Reference Include="System.ServiceModel" />
Tipp
Nach dem Schließen und erneuten Öffnen des Projekts sollte es auch neu erstellt werden, um sicherzustellen, dass alle Verweise ordnungsgemäß aufgelöst wurden.
Siehe auch
Aufgaben
Konzepte
Weitere Ressourcen
Ausrichten auf eine bestimmte .NET Framework-Version oder ein bestimmtes .NET Framework-Profil