Freigeben über


Veraltete Elemente der .NET Framework-Klassenbibliothek

.NET Framework hat sich im Laufe der Zeit geändert. Jede neue Version hat neue Typen und Typenmitglieder hinzugefügt, die neue Funktionen bereitgestellt haben. Vorhandene Typen und ihre Mitglieder haben sich auch im Laufe der Zeit geändert. Einige Typen wurden beispielsweise weniger wichtig, da die von ihnen unterstützte Technologie durch eine neue Technologie ersetzt wurde, und einige Methoden wurden durch neuere Methoden ersetzt, die auf irgendeine Weise überlegen sind.

.NET Framework und die Common Language Runtime sind bestrebt, Abwärtskompatibilität zu unterstützen (sodass Anwendungen, die mit einer Version von .NET Framework entwickelt wurden, auf der nächsten Version von .NET Framework ausgeführt werden können). Dadurch ist es schwierig, einfach einen Typ oder ein Typmitglied zu entfernen. Stattdessen hat .NET Framework angegeben, dass ein Typ oder ein Typmitglied nicht mehr verwendet werden sollte, indem es als veraltet oder nicht mehr empfohlen gekennzeichnet wird. Durch das Veralten eines Typs oder eines Mitglieds wussten Entwickler, dass dieser entfernt werden würde und hatten Zeit, auf die Entfernung zu reagieren. Vorhandenen Code, der den Typ oder das Mitglied verwendet, wird jedoch weiterhin in der neuen Version von .NET ausgeführt.

Hinweis

Wenn eine API in .NET (Core) als veraltet markiert wird, bedeutet das nicht unbedingt, dass die API entfernt wird. Weitere Informationen finden Sie unter API-Entfernung in .NET.

Das ObsoleteAttribute-Attribut

.NET Framework gibt an, dass ein Typ oder typelement veraltet ist, indem er mit dem ObsoleteAttribute Attribut markiert wird. Wenn Sie das Attribut auf einen Typ oder ein Element anwenden, wird angegeben, dass der Typ oder member in einer zukünftigen Version entfernt wird, ohne kompilierten Code zu unterbrechen, der dieses Element verwendet.

Zusätzlich zur Angabe, dass ein Typ oder ein Typmememm veraltet ist, definiert, wie der Compiler Quellcode verarbeitet, ObsoleteAttribute der diesen Typ oder Element enthält. Der Compiler kann den Code kompilieren, aber eine Warnmeldung ausgeben, oder er kann die Verwendung des Typs oder Elements als Fehler behandeln. Im ersten Fall kann der Code erfolgreich kompiliert werden, aber eine Warnmeldung gibt an, dass der Typ oder member veraltet ist. Im zweiten Fall schlägt die Kompilierung fehl.

Auch wenn die Kompilierung einen Fehler anstelle einer Warnmeldung erzeugt, hat ObsoleteAttribute keinen Einfluss auf das Laufzeitverhalten. Das heißt, Anwendungen, die den Typ oder member verwenden und die erfolgreich kompiliert wurden, werden immer erfolgreich ausgeführt. Nur der Versuch, eine Anwendung, die den Typ oder member verwendet, neu zu kompilieren, schlägt fehl.

Behandeln von veralteten Typen und Membern

Wenn Sie vorhandenen Code aktualisieren und neu kompilieren, ist die Verwendung eines veralteten Typs oder Elements, der eine Compilerwarnung in Ihrer Anwendung erzeugt, akzeptabel. Überprüfen Sie jedoch die Compilerwarnung, um zu ermitteln, ob Sie den Anwendungscode ändern sollten. Wenn die Nachricht nicht auf eine geeignete Alternative verweist, sollten Sie eine der folgenden Aktionen ausführen:

  • Ändern Sie Ihren Code, indem Sie die Verwendung des Typs oder Elements entfernen, falls möglich.

    -oder-

  • Lesen Sie die Dokumentation für diesen Technologiebereich, um zu bestimmen, wie darauf reagiert werden soll, dass die Komponente veraltet ist.

Sie können sich entscheiden, den vorhandenen Code nicht mit einer späteren Version von .NET Framework zu kompilieren. Stattdessen können Sie die Version von .NET Framework angeben, für die ihr vorhandener kompilierter Code ausgeführt wird. Angenommen, Sie haben eine Anwendung mit dem Namen app1.exe , die mit .NET Framework 3.5 kompiliert wurde, die Anwendung jedoch für .NET Framework 4.5 ausgeführt werden soll. Dies erfordert die folgenden Schritte:

  1. Erstellen Sie eine Konfigurationsdatei für die ausführbare Hauptdatei, und nennen Sie sie "appName ".exe.config, wobei "appName " der Name der ausführbaren Anwendung ist. Für die Anwendung mit dem Namen app1.exe in unserem Beispiel erstellen Sie eine Konfigurationsdatei mit dem Namen app1.exe.config.

  2. Fügen Sie der Konfigurationsdatei Folgendes hinzu.

    <configuration>
       <startup>
          <supportedRuntime version="v4.0" />
       </startup>
    </configuration>
    

Um eine bestimmte Version von .NET Framework zu verwenden, weisen Sie dem version Attribut einen der folgenden Zeichenfolgenwerte zu:

.NET Framework-Version version Schnur
4.8 (einschließlich 4.8.1) v4.0
4.7 (einschließlich 4.7.1 und 4.7.2) v4.0
4.6 (einschließlich 4.6.1 und 4.6.2) v4.0
4.5 (einschließlich 4.5.1 und 4.5.2) v4.0
4 v4.0
3,5 v2.0.50727
2.0 v2.0.50727
1.1 v1.1.4322
1,0 v1.0.3705

Veraltete APIs für .NET Framework 4.5 und höhere Versionen

Veraltete APIs für frühere Versionen

Siehe auch